MFC应用实例:[56]自定义窗口设置字体颜色

 时间:2024-10-20 07:26:50

1、新建一个基于对话框的应用程序,工程名为ControlFont。

MFC应用实例:[56]自定义窗口设置字体颜色

3、新建一个Dialog设计如下:

MFC应用实例:[56]自定义窗口设置字体颜色

5、为CControlFontDlg类添加OnDrawItem()函数,绘制自定义字体的按钮。在OnDrawItem()函数中添加一下代码:void CControlFontDlg::OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct){ if(nIDCtl==IDC_BUTTON1) //绘制按钮 { CDC dc; RECT rect; dc.Attach(lpDrawItemStruct ->hDC); // 获取按钮设备描述符 rect = lpDrawItemStruct->rcItem; //保存按钮区域坐标 dc.Draw3dRect(&rect,RGB(255,0,255),RGB(0,0,0)); dc.FillSolidRect(&rect,RGB(100,100,255)); //设定按钮背景色 UINT state=lpDrawItemStruct->itemState; //设置按钮状态 if((state & ODS_SELECTED)) dc.DrawEdge(&rect,EDGE_SUNKEN,BF_RECT); else dc.DrawEdge(&rect,EDGE_RAISED,BF_RECT); dc.SetBkColor(m_BKColor); //设置字体背景颜色 dc.SetTextColor(m_TextColor); //设置字体颜色 TCHAR buffer[MAX_PATH]; //绘制字体 ZeroMemory(buffer,MAX_PATH); ::GetWindowText(lpDrawItemStruct->hwndItem,buffer,MAX_PATH); dc.DrawText(buffer,&rect,DT_CENTER|DT_VCENTER|DT_SINGLELINE); dc.Detach(); }}

MFC应用实例:[56]自定义窗口设置字体颜色MFC应用实例:[56]自定义窗口设置字体颜色
  • 怎样在启动Excel时即打开指定的工作薄
  • 图示EXCEL表格vba系列93之编写代码显示等号=
  • Python编程:正则表达式怎么匹配非“大写”字母
  • 如何将记事本的内容变成各种搞怪的图形文字
  • WiFi模块EVB测试板怎么使用?
  • 热门搜索
    安徽省旅游地图 浙江嘉兴旅游 青岛有哪些旅游景点 云南旅游风景图片 宝安旅游租车 旅游天下 西安自由行旅游攻略 南湖旅游 香港旅游购物攻略 夏天哪里旅游好