Re[3]: sdi и invalidate
От: mitq Россия  
Дата: 03.05.02 05:14
Оценка:
Можно сделать примерно так:
class CMainFrame
{
// ...
private:
   HANDLE m_hDrawEvent;
};

CMainFrame::CMainFrame()
{
   m_hEventDrawed = ::CreateEvent( 0, FALSE, FALSE, _T("Моё событие для рисования") );
}

void CMainFrame::OnПоказатьДиалог()
{
   CMyDialog dlg(this);
   dlg.m_hEventDrawed = m_hEventDrawed;
   dlg.DoModal();
}

class CMyDialog
{
// ...
public:
   HANDLE m_hEventDrawed;
};

void CMyDialog::Где-тоТам()
{
   DoImage();
   CMainFrame* pAppFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
   pAppFrame->Invalidate(false);

   WaitForSingleObject( m_hEventDrawed, INFINITE );
}

И никакого дремучего леса.

Удачи.
Дмитрий.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.