1: 2011-07-13 (水) 14:55:51 iseki  |
現: 2011-07-13 (水) 14:58:47 iseki  |
| | #br | | #br |
| | *** ToolBar [#x07afc90] | | *** ToolBar [#x07afc90] |
| | + | + OnEraseBkgndEdit(CDC* pDC) でその都度画面を書き換える |
| | + | BOOL CExToolBar::OnEraseBkgnd(CDC* pDC) |
| | + | { |
| | + | // ちらつき防止 |
| | + | ::InvalidateRect(this->m_hWnd, NULL, FALSE); |
| | + | ::UpdateWindow(this->m_hWnd); |
| | + | |
| | + | return CToolBar::OnEraseBkgnd(pDC); |
| | + | } |
| | + | #br |
| | + | *** ダブルバッファ [#f5b727af] |
| | + | - 例 |
| | + | // 画面の大きさ |
| | + | RECT rect; |
| | + | this->GetClientRect(&rect); |
| | + | |
| | + | // 画面のデバイスコンテキスト |
| | + | CPaintDC dc(this); |
| | + | |
| | + | // BitMapデータ |
| | + | CBitmap bmp; |
| | + | //bmp.CreateCompatibleBitmap(&dc, rect.right, rect.bottom); |
| | + | bmp.LoadBitmap(rsrcID); |
| | + | |
| | + | // バックバッファ用デバイスコンテキスト |
| | + | CDC memDC; |
| | + | memDC.CreateCompatibleDC(&dc); |
| | + | |
| | + | // BitMapデータとバックバッファ用デバイスコンテキストを関連付ける |
| | + | memDC.SelectObject(&bmp); |
| | + | |
| | + | // バックバッファをフロントに転送 |
| | + | dc.BitBlt(0, 0, rect.right, rect.bottom, &memDC, 0, 0, SRCCOPY); |
| | + | |
| | + | // BitMapデータを開放 |
| | + | bmp.DeleteObject(); |
|
|
| |