• 解説

    Visual C++でウィンドウの背景を変更したいときプロパティなどで手軽に変更することができません。
    面倒でも自分で描画しなければなりません。

    方法はOnPaint(WM_PAINTメッセージ)で描画します。

  • サンプル(背景を赤にします)

    void クラス名::OnPaint()
    {
        CPaintDC    dc(this);
    
        CRect   ClientRect;
    
        GetClientRect(ClientRect);
    
        CBrush  BackColor(RGB(255, 0, 0));
    
        CBrush  *OldBrush = dc.SelectObject(&BackColor);
    
        dc.PatBlt(ClientRect.left, ClientRect.top,
                  ClientRect.Width(), ClientRect.Height(), PATCOPY);
    
        dc.SelectObject(OldBrush);
    
        CDialog::OnPaint();
    }
    
  • その他

    これだけだとちらつくことがあります。
    ちらつきを抑える方法はまた別の技術情報で紹介します。

説明がわからないなどありましたらお問い合わせでお知らせください。

ここに掲載された情報を使用したことによって発生した、いかなる損害に対しても
管理者である雅は一切責任を負いません。