Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.56.28] |
|
Сообщ.
#1
,
|
|
|
В проге имеются две кнопки. Первая из них выполняет следующую функцию:
void __fastcall TMainForm::Button1Click(TObject *Sender) { for(;; ){ if(param1==3534)break; } } , Разумеется при нажатии на этот батон графический интерфейс проги ВИСНЕТ. Так вот как сделать так, чтобы данный цикл исполняясь не вызывал зависания проги. А по нажатию на кнопку номер два(void __fastcall TMainForm::Button1Click(TObject *Sender) {}),данный цикл прекращался. ???Всем огромное спАсибО. |
Сообщ.
#2
,
|
|
|
Цитата DarkKnight, 12.08.02, 09:16:03 В проге имеются две кнопки. Первая из них выполняет следующую функцию: void __fastcall TMainForm::Button1Click(TObject *Sender) { for(;; ){ if(param1==3534)break; } } , Разумеется при нажатии на этот батон графический интерфейс проги ВИСНЕТ. Так вот как сделать так, чтобы данный цикл исполняясь не вызывал зависания проги. А по нажатию на кнопку номер два(void __fastcall TMainForm::Button1Click(TObject *Sender) {}),данный цикл прекращался. ???Всем огромное спАсибО. В цикле for (или любом другом наиболее долгом) вставлять Application->ProcessMessages(). |
Сообщ.
#3
,
|
|
|
Или засунь цикл в поток.
|
Сообщ.
#4
,
|
|
|
Цитата DarkKnight, 12.08.02, 09:16:03 В проге имеются две кнопки. Первая из них выполняет следующую функцию: void __fastcall TMainForm::Button1Click(TObject *Sender) { for(;; ){ if(param1==3534)break; } } , Разумеется при нажатии на этот батон графический интерфейс проги ВИСНЕТ. Так вот как сделать так, чтобы данный цикл исполняясь не вызывал зависания проги. А по нажатию на кнопку номер два(void __fastcall TMainForm::Button1Click(TObject *Sender) {}),данный цикл прекращался. ???Всем огромное спАсибО. а ты попробуй через другой цикл ну например через do { ... }while(2>23) чтото в этом роде....=) |