Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.05;
Скачать: CL | DM;

Вниз

Подождать нажатие кнопки   Найти похожие ветки 

 
sdw_syscoder   (2004-08-17 16:06) [0]

Как получше забацать ожидание нажатия кнопки. А то я забабахал по-деревенски вот эндак:

 // ждем, пока не нажмут СТАРТ
 repeat
 if TransmitForm.FLAG = 1 then break;
 until TransmitForm.FLAG = 1;

... а сделать как положено -  не знаю как.
Кстати, через WaitForSingleObject можно? Всё равно нажатие надо ждать в потоке. Если можно, то что нужно указать в качестве пар-ра hHandle?


 
Rouse_ ©   (2004-08-17 16:17) [1]

А смысл операции?


 
sdw_syscoder   (2004-08-17 16:21) [2]

Смысл ЕСТЬ!


 
TUser ©   (2004-08-17 16:23) [3]

А повесь на OnClick баттона нужный код, и все.


 
Rouse_ ©   (2004-08-17 16:24) [4]

> [2] sdw_syscoder   (17.08.04 16:21)
Ты не врубился, если код который ждет находится в потоке, то подойдет как WaitForSingleObject так и другие варианты синхронизации, вплоть до тупого поднятия флага :)


 
Rouse_ ©   (2004-08-17 16:29) [5]

Просто к чему я веду, зачем ждать нажатия кнопки когда вполне возможно выполнить некий код в самом обработчике? (Ну смотря как там у тебя логика сделана)


 
s999   (2004-08-17 16:31) [6]

MsgWaitForMultipleObjects


 
sdw_syscoder   (2004-08-17 16:49) [7]

> TUser ©   (17.08.04 16:23) [3]
> Rouse_ ©   (17.08.04 16:29) [5]

Дело в том, что в onClick у меня запускается поток, выполняются некие действия, а затем надо ждать нажатие кнопки.

> s999   (17.08.04 16:31) [6]
Нечаго, тоже крутая функция... ща поюзаем. Thank you!

Впрочем, что же нужно указать в качестве хэндла(никак не пойму её назначение)?


 
Ega23 ©   (2004-08-17 16:55) [8]

Впрочем, что же нужно указать в качестве хэндла(никак не пойму её назначение)?

Укажи nil, если не знаешь! Или Application.Handle. Или Твой_Button.Handle
Вариантов - тьма!


 
Ega23 ©   (2004-08-17 16:55) [9]

Впрочем, что же нужно указать в качестве хэндла(никак не пойму её назначение)?

Укажи nil, если не знаешь! Или Application.Handle. Или Твой_Button.Handle
Вариантов - тьма!


 
s999   (2004-08-17 18:03) [10]


> Укажи nil, если не знаешь! Или Application.Handle. Или Твой_Button.Handle
> Вариантов - тьма!


Не морочь парню голову. В данном случае нужен Handle процесса. Пример для поставленной задачи:

XXX := OpenProcess(SYNCHRONIZE, LongBool(False), GetCurrentProcessId);
AAA := MsgWaitForMultipleObjects(1, XXX, LongBool(False), INFINITE, QS_KEY);



Страницы: 1 вся ветка

Текущий архив: 2004.09.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.023 c
1-1092818405
Labert
2004-08-18 12:40
2004.09.05
Знатокам ООП...


6-1088655505
Del_programmer
2004-07-01 08:18
2004.09.05
pop3


1-1092762975
ctapik-net
2004-08-17 21:16
2004.09.05
Почему не работает TInternetExplorer не пойму


14-1092570661
GanibalLector
2004-08-15 15:51
2004.09.05
Оса укусила прямо в глаз


3-1092053052
Viktor1
2004-08-09 16:04
2004.09.05
В чём разница между IBExpert и IBManager?