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

Вниз

MsgWaitForMultipleObjects   Найти похожие ветки 

 
Unknown Mystic ©   (2004-08-02 12:34) [0]

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

Result := MsgWaitForMultipleObjects(1, hProcess, false, INFINITE, QS_PAINT);

Я так понимаю, что вызов MsgWaitForMultipleObjects надо поместить в цикл и в зависимости от возвращаемого значения либо выходить из него (Result = WAIT_ABANDONED_0) , либо... А что собственно делать, когда Result = WAIT_OBJECT_0 ?

Если можно, напишите этот цикл. Спасибо.


 
Polevi ©   (2004-08-02 12:35) [1]

Result = WAIT_OBJECT_0 означает что засигналил hProcess, то есть процесс завершился


 
Unknown Mystic ©   (2004-08-02 12:41) [2]

Да? Значит я не так понял... А что делать когда происходит QS_PAINT?


 
Игорь Шевченко ©   (2004-08-02 12:42) [3]


> А что делать когда происходит QS_PAINT?


PeekMessage + DispatchMessage


 
Unknown Mystic ©   (2004-08-02 12:49) [4]

Спасибо. Попробую. Кстати какое значение будет у Result, при возникновении QS_PAINT?


 
Игорь Шевченко ©   (2004-08-02 13:18) [5]


> Кстати какое значение будет у Result, при возникновении
> QS_PAINT?

WAIT_OBJECT_0 + 1 в данном случае


 
Unknown Mystic ©   (2004-08-02 13:24) [6]

Т.е.
WAIT_OBJECT_0     - завершение процесса (hProcess)
WAIT_OBJECT_0 + 1 - QS_PAINT
так? А что тогда такое WAIT_ABANDONED_0 ?


 
Digitman ©   (2004-08-02 13:34) [7]


> Unknown Mystic ©   (02.08.04 13:24) [6]


while True do
case MsgWaitForMultipleObjects(1, hProcess, false, INFINITE, QS_PAINT) of
WAIT_OBJECT_0: Break;
WAIT_OBJECT_0 + 1:
  while Peekmessage(Msg, 0, 0, 0, PM_REMOVE) do
    begin
      TranslateMessage(Msg);
      Dispatchmessage(Msg);
    end;
end;

WAIT_ABANDONED - это, в первую очередь, для работы с мьютексами и семафорами, тебя это в дан.случае не касается


 
Unknown Mystic ©   (2004-08-02 13:36) [8]

Большое спасибо!



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
3-1092977644
leonidus
2004-08-20 08:54
2004.09.19
Конвертация базы из dBase в Paradox


1-1094154901
Zloy
2004-09-02 23:55
2004.09.19
Упаковка и распаковка данных в архив, с помощью двух кнопок


14-1093671943
VID
2004-08-28 09:45
2004.09.19
Приезжаю в Москву.


10-1040709267
dvp
2002-12-24 08:54
2004.09.19
Oracle(Solaris) - ? - Client(Windows)


14-1093770941
able
2004-08-29 13:15
2004.09.19
Вопрос по ноутбукам.