Build 205 of win32gui does have PeekMessage etc so you can now write the message loop in Python should the need arise - however, the various "PumpMessages" and "PumpWaitingMessages" functions do the same thing, but are implemented in C. There are versions of these functions in win32gui and win32ui. win32ui is the MFC wrapper, and its version does do it the "MFC way", as opposed to the vanilla Windows way that win32gui exposes. Your code below looks like it is MFC based, so the win32ui versions may work better for you (eg, work correctly with the MFC idle processing). If you do truly only need VB DoEvents style processing (which is not MFC aware), win32gui.Pump(Waiting)Messages should be fine though.
Mark -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of James Hu Sent: Thursday, 27 October 2005 4:10 AM To: Python-win32@python.org; python-list@python.org Subject: [python-win32] simulate DoEvents by python/wxpython Hi, all gurus, I need to simulate DoEvents in VB by python/wxPython, My application needs to capture live image in a loop until one specific button pressed Multi-thread is also not very good solution, for there are big number of data to exchange between the two threads. Win32gui doesn't have PeekMessage. Or translate the folllowinf codes to python? DoEvents() { MSG msg; while ( ::PeekMessage( &msg, NULL, 0, 0, PM_NOREMOVE ) ) { if ( !PumpMessage( ) ) { ::PostQuitMessage( 1 ); return FALSE; } } // let MFC do its idle processing LONG lIdle = 0; while ( OnIdle(lIdle++ ) ) ; return TRUE; } } Thanks in advance, James -- http://mail.python.org/mailman/listinfo/python-list