おいちゃんのおぼえがき

仕事のTipsをメモするブログ

CEditでの背景色設定

2009-06-19 | Win
まず、メンバーにブラシを追加

  CBrush m_mybrush;

次に OnInitDialog 中で実体生成

  m_mybrush.CreateSolidBrush(RGB(255, 255, 255));

次にダイアログのイベントとして OnCtrlColor() を定義
その中で次のようにブラシを戻す。

HBRUSH CXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
  HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

  // TODO: ここで DC の属性を変更してください。
  switch(nCtlColor){
  // エディットボックス
// case CTLCOLOR_EDIT:  // read/write の時
  case CTLCOLOR_STATIC: // read only の時
    if (pWnd->m_hWnd == m_edRecv.m_hWnd) {
      pDC->SetBkMode(TRANSPARENT);   // 背景透過
      return (HBRUSH)m_editBackBrush; // 背景色ブラシ
    }

  default:
    return hbr;
  }
}

この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« CEditでの改行とフォント変更 | トップ | MFC チェックボックスの背景色 »

Win」カテゴリの最新記事