Windows/WTL

CUpdateUI

aucd29 2013. 10. 2. 13:50
UI를 Idle 상태에서 계속 갱신하고 싶다면!

1. 다중 상속란에
[code]public CUpdateUI<클래스명>,[/code]

2. 메시지 맵
[code]BEGIN_UPDATE_UI_MAP(CMainDlg)
END_UPDATE_UI_MAP()[/code]

3. BOOL OnIdle();
[code]BOOL CMainDlg::OnIdle()
{
    //
    // UI idle
    //
    UIUpdateChildWindows();
    return FALSE;
}[/code]

4. // register object for message filtering and idle updates
[code]CMessageLoop* pLoop = _Module.GetMessageLoop();
ATLASSERT(pLoop != NULL);
pLoop->AddMessageFilter(this);
pLoop->AddIdleHandler(this);[/code]