Забавяне между отварянето на прозорците

Работя върху приложение за формуляр на Windows в сценарий с двоен монитор, при който 2 формуляра се отварят на един екран, а други 3 формуляра се отварят на вторичен екран.

Нека ви обясня сценария в реално време-

screen 1         Screen 2               Case
Form1             desktop                1
Form2             form 3                 2  delay is not visible because earlier screen was desktop only
Form2            desktop                 3  When i open form 4 it gives delay of few ms and show desktop
Form2             Form4                  4  Now After delay it opens form 4

Сега въпросът ми е каква може да е причината за забавянето

  • Всеки хардуерен проблем
  • Всеки друг процес, който задържа известно време.
  • Има ли някакъв начин, по който мога да проверя причината за забавянето.
  • Друга причина, която не знам.

Тъй като този въпрос обхваща целия проект, не е възможно да се предостави кодов фрагмент. Резултатите от търсачките също не помагат.


person Hot Cool Stud    schedule 19.12.2014    source източник
comment
Използвате ли някакъв специален код, за да го отворите на различни монитори? Можете ли да възпроизведете това на празни формуляри в обикновено приложение winforms? Ако се отваря бързо, това е вашият код. В противен случай ни уведомете как отваряте формулярите си.   -  person rodrigogq    schedule 19.12.2014
comment
Каква е разликата между Forms3 и 4? Подозирам, че времето за зареждане/изобразяване/показване на тях сами вече е различно. Опитахте ли да отворите всички формуляри на 1 екран?   -  person Mark Menchavez    schedule 19.12.2014
comment
@MarkMenchavez все още няма да опита ..   -  person Hot Cool Stud    schedule 19.12.2014


Отговори (1)


Когато имате формуляри, които изглеждат бавни за зареждане и показване, опитайте се да намалите броя на задачите, които трябва да изпълнява при зареждане на формуляр. Опитайте се да преместите някои от тях във Form Activate, когато е подходящо. Не отваряйте и затваряйте формуляри ненужно, опитайте се да скриете вече заредените формуляри и просто ги покажете отново, когато е необходимо. Можете също да опитате да използвате фонов работен компонент, за да извършите необходимата тежка обработка. По този начин формулярът вече се показва, докато се изпълнява фонова задача.

person Mark Menchavez    schedule 19.12.2014