|
13.08.2007, 11:48 | #1 |
Участник
|
Распределение ресурсов процессора
Подскажите, пожалуйста! Вот, в основной форме я создаю, инициализирую и запускаю другую форму, например:
args = new Args("SomeFormName"); formRun = new formRun(args); formRun.init(); formRun.run(); На этой форме (SomeFormName) динамически изменяется свойства ее контролов: текст, цвет и т.п. Все меняется до тех пор, пока я не начинаю выполнять в основной форме код типа: ... while select bankAccountTable { this.selected(); formRun.redraw(); } ... Даже вызов метода redraw не помогает, дополнительная форма (SomeFormName) все равно не перерисовавается и остается статичной до завершения цикла. Как заставить перерисовываться форму параллельно выполнению других ресурсоемких операций? |
|
13.08.2007, 12:06 | #2 |
Moderator
|
X++: WinApi::updateWindow(element.hWnd()); |
|
|
За это сообщение автора поблагодарили: e@gle (1). |
13.08.2007, 16:22 | #3 |
Участник
|
Попробовал так:
... while select bankAccountTable { this.selected(); formRun.redraw(); WinApi::updateWindow(formRun.hWnd()); } ... Подобный вызов обновления окна ч/з API ни к чему не приводит! |
|
17.08.2007, 18:47 | #4 |
Участник
|
|
|
13.08.2007, 16:29 | #5 |
Moderator
|
Попробуйте:
1. на форме создать метод содержащий WinApi::updateWindow(element.hWnd()); 2. в своем коде приводить formRun к Object и дергать этот метод |
|
13.08.2007, 16:42 | #6 |
Участник
|
Если не поможет, попробуйте здесь
X++: ...
formRun.run();
//Здесь X++: formRun.detach(); |
|
13.08.2007, 17:14 | #7 |
Участник
|
Цитата:
что я отделно руками (ч/з меню: открыть) вызываю эту форму. Ни запуск отдельно, ни применение detach() не помогло... КСТАТИ, я смотрел загрузка ЦП в момент обращения к таблице (цикл while select) достигает потолка. Может дело все-таки в приоритете операций... |
|
|
Похожие темы | ||||
Тема | Ответов | |||
Распределение бюджетов в Аксапте | 2 | |||
Распределение бюджетов HELP | 1 | |||
Распределение по счетам | 2 | |||
Распределение с аналитикой | 3 |
|