使用顏色對話框選擇顏色
在MFC應(yīng)用程序中,顏色對話框是一種方便用戶選擇顏色的工具。本文將介紹如何在基于對話框的應(yīng)用程序中使用顏色對話框選擇顏色。新建應(yīng)用程序首先,我們需要新建一個基于對話框的應(yīng)用程序,并將其命名為Color
在MFC應(yīng)用程序中,顏色對話框是一種方便用戶選擇顏色的工具。本文將介紹如何在基于對話框的應(yīng)用程序中使用顏色對話框選擇顏色。
新建應(yīng)用程序
首先,我們需要新建一個基于對話框的應(yīng)用程序,并將其命名為ColorDialog。接著,在對話框中添加“顏色”和“退出”兩個按鈕,并為這兩個按鈕添加響應(yīng)函數(shù)。
初始化應(yīng)用程序
為了使應(yīng)用程序初始化時顯示一個紅色的橢圓,我們需要在OnInitDialog()函數(shù)中添加以下代碼:
```cpp
COLORREF crColor RGB(255, 0, 0); // 設(shè)置初始顏色
```
然后,在OnPaint()函數(shù)中添加以下代碼:
```cpp
CBrush brush, *pOldBrush;
(crColor);
pOldBrush (brush);// 載入刷子
dc.Ellipse(40, 40, 220, 150);// 繪制橢圓
(pOldBrush);// 恢復(fù)設(shè)備上下文的原有畫刷
();
```
注意要在代碼文件開頭添加COLORREF crColor; // 填充顏色定義顏色。
選擇顏色
在顏色按鈕的響應(yīng)函數(shù)OnColor()中,我們需要添加以下代碼:
```cpp
void CColorDialogDlg::OnColor()
{
CColorDialog colordialog(crColor, CC_FULLOPEN);// 初始化顏色對話框?qū)ο?/p>
if (() IDOK)// 創(chuàng)建顏色對話框
{
crColor ();// 獲取設(shè)置顏色
Invalidate(TRUE);// 重繪窗口
}
}
```
這段代碼會創(chuàng)建一個顏色對話框,并允許用戶選擇顏色。用戶選擇顏色后,它會被存儲在crColor變量中,并調(diào)用Invalidate()函數(shù)重新繪制窗口。
運行程序
現(xiàn)在,我們可以運行程序并嘗試使用顏色對話框選擇顏色。例如,我們可以選擇綠色顏色。
通過以上步驟,我們成功地向基于對話框的應(yīng)用程序中添加了顏色對話框,幫助用戶方便地選擇顏色。