程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> 對話框-OnCtlColor函數關於顏色調用的問題

對話框-OnCtlColor函數關於顏色調用的問題

編輯:編程解疑
OnCtlColor函數關於顏色調用的問題

OnCtlColor函數怎麼保存CColorDiaog對話框設置的對話框?我不希望它每次都調用。謝謝

最佳回答:


 void CApp2Dlg::OnButton1() 
{
    // TODO: Add your control notification handler code here
    CColorDialog colorDia;
     if (colorDia.DoModal() == IDOK)
     {
          m_color = colorDia.GetColor();
          GetDlgItem(IDC_STATIC_1)->InvalidateRect(NULL);
     }
}

HBRUSH CApp2Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
    HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
    m_brush.CreateSolidBrush(m_color);
    // TODO: Change any attributes of the DC here
    UpdateData(TRUE);
    if (pWnd->GetDlgCtrlID() == IDC_STATIC_1)
    {
        pDC->SetBkColor(m_color);
        pDC->SetBkMode(OPAQUE);
        return m_brush;
    }

    UpdateData(FALSE);

    // TODO: Return a different brush if the default is not desired
    return hbr;
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved