
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
26.10.2007, 17:13:56
|
|||
|---|---|---|---|
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
Люди, подскажите, наверняка кто-то встречался. Пишу вывод на Form1->Memo1->Lines-> значений, вычисляемых в большом цикле. Выводится очень хорошо. Но проблема в том, что пока цикл не кончится, форма как бы зависает и я не могу её мышью ни передвинуть на другое место, ни закрыть. Если же чудом удаётся передвинуть форму, то цикл останавливается и программа зависает навсегда. В Visual Basic есть для этого специальная функция DoEvents. Есть ли аналог в С++ ? Заранее спасибо Max Pro ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 19:56:10
|
|||
|---|---|---|---|
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
Эх. Сам нашёл. Не знаю то ли это: Код: plaintext Max Pro ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 20:19:46
|
|||
|---|---|---|---|
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
Вот ещё способ. Работает точно также. Тоже не даёт окно закрыть. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 20:30:58
|
|||
|---|---|---|---|
|
|||
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
Посмотрите пример C:\BCB6\Examples\Apps\Threads\ (или как там соответствено у Вас) - кажется, это то, что Вам надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 20:43:14
|
|||
|---|---|---|---|
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
gl@zПосмотрите пример C:\BCB6\Examples\Apps\Threads\ (или как там соответствено у Вас) - кажется, это то, что Вам надо. Посмотрел. Там та же проблема - пока не закончится сортировка окно невозможно закрыть. Хорошо у меня компьютер слабенький, а то и проверить не смог бы (сортировка идёт довольно быстро). Остаётся маленький вопрос: как во время выполнения обработчика кнопки (у меня долгий цикл) разрешить С++ закрыть окно по нажатию на кнопочку с крестиком в углу окна либо по Crtl+F4 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 20:44:24
|
|||
|---|---|---|---|
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
Max Pro либо по Crtl+F4 ? Пардон, Alt+F4 конечно же ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 20:51:04
|
|||
|---|---|---|---|
|
|||
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
Я имел ввиду - запихнуть длинныЙ цикл в самостоятелную Thread. Когда-то у меня была такая ситуация - так и решил. Возможно, проект кудо-то валяется... Поищу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 20:59:59
|
|||
|---|---|---|---|
|
|||
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
Кажется, вспомнил - если не ошибаюсь. Копайте в сторону Synchronize Metod - по памяти, там было решение моей проблеммы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 21:03:31
|
|||
|---|---|---|---|
|
|||
VB6 --> C++ Builder 6: Подскажите аналог DoEvents |
|||
|
#18+
// Important: Methods and properties of objects in VCL can only be // used in a method called using Synchronize, for example: // // Synchronize(UpdateCaption); // // where UpdateCaption could look like: // // void __fastcall SndThread::UpdateCaption() // { // Form1->Caption = "Updated in a thread"; // } //--------------------------------------------------------------------------- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&tablet=1&tid=2027928]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
215ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 183ms |
| total: | 465ms |

| 0 / 0 |
