Форум: "Основная";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];
ВнизПодождать нажатие кнопки Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.031 c