非客户绘图失败,大神帮忙啊
时间:2011-12-03
来源:互联网
void CTestDlg::OnNcPaint()
{
// TODO: 在此处添加消息处理程序代码
// 不为绘图消息调用 CDialogEx::OnNcPaint()
CDialogEx::OnNcPaint();
CDC* pDC=GetWindowDC();
CRect rcTitle,rcWin;
GetWindowRect(rcWin);
rcTitle.left=70;
rcTitle.top=1;
rcTitle.right=rcWin.Width()-2;
rcTitle.bottom=GetSystemMetrics(SM_CYSCREEN);
HBRUSH hBrush=::CreateSolidBrush(RGB(255,0,0)); //创建画刷
pDC-> SelectObject(); //这一行怎么修改,需要参数类型是CBrush
pDC-> FillRect(rcTitle,&brbak);
::DeleteObject(hBrush);
ReleaseDC(pDC);
}
第二个问题:函数末尾 DeleteObject 对不对?????
第三个问题: 当对话框最小化后, 结果又恢复原来的 颜色了。。。。。。。。。。。。。。。。。。。
{
// TODO: 在此处添加消息处理程序代码
// 不为绘图消息调用 CDialogEx::OnNcPaint()
CDialogEx::OnNcPaint();
CDC* pDC=GetWindowDC();
CRect rcTitle,rcWin;
GetWindowRect(rcWin);
rcTitle.left=70;
rcTitle.top=1;
rcTitle.right=rcWin.Width()-2;
rcTitle.bottom=GetSystemMetrics(SM_CYSCREEN);
HBRUSH hBrush=::CreateSolidBrush(RGB(255,0,0)); //创建画刷
pDC-> SelectObject(); //这一行怎么修改,需要参数类型是CBrush
pDC-> FillRect(rcTitle,&brbak);
::DeleteObject(hBrush);
ReleaseDC(pDC);
}
第二个问题:函数末尾 DeleteObject 对不对?????
第三个问题: 当对话框最小化后, 结果又恢复原来的 颜色了。。。。。。。。。。。。。。。。。。。
作者: caddor 发布时间: 2011-12-03
HBRUSH hBrush=::CreateSolidBrush(RGB(255,0,0)); //创建画刷
pDC-> SelectObject(); //这一行怎么修改,需要参数类型是CBrush
pDC-> FillRect(rcTitle,&brbak);
-->
CBrush hBrush;
hBrush.CreateSolidBrush(RGB(255, 0, 0));
ASSERT(hBrush.GetSafeHandle());
CBrush* pOldBr = (CBrush*)pDC->SelectObject(&bBrush);
pDC->SelectObject(pOldBr);
...
pDC-> SelectObject(); //这一行怎么修改,需要参数类型是CBrush
pDC-> FillRect(rcTitle,&brbak);
-->
CBrush hBrush;
hBrush.CreateSolidBrush(RGB(255, 0, 0));
ASSERT(hBrush.GetSafeHandle());
CBrush* pOldBr = (CBrush*)pDC->SelectObject(&bBrush);
pDC->SelectObject(pOldBr);
...
作者: VisualEleven 发布时间: 2011-12-03
请问 DeleteObject 对不对??????
引用 1 楼 visualeleven 的回复:
HBRUSH hBrush=::CreateSolidBrush(RGB(255,0,0)); //创建画刷
pDC-> SelectObject(); //这一行怎么修改,需要参数类型是CBrush
pDC-> FillRect(rcTitle,&brbak);
-->
CBrush hBrush;
hBrush.CreateSolidBrush(RGB(255, 0,……
HBRUSH hBrush=::CreateSolidBrush(RGB(255,0,0)); //创建画刷
pDC-> SelectObject(); //这一行怎么修改,需要参数类型是CBrush
pDC-> FillRect(rcTitle,&brbak);
-->
CBrush hBrush;
hBrush.CreateSolidBrush(RGB(255, 0,……
作者: caddor 发布时间: 2011-12-03
当对话框最小化后, 结果又恢复原来的 颜色了。。。。。。。。。。。。。。。。。。。
这怎么办??????
引用 1 楼 visualeleven 的回复:
HBRUSH hBrush=::CreateSolidBrush(RGB(255,0,0)); //创建画刷
pDC-> SelectObject(); //这一行怎么修改,需要参数类型是CBrush
pDC-> FillRect(rcTitle,&brbak);
-->
CBrush hBrush;
hBrush.CreateSolidBrush(RGB(255, 0,……
HBRUSH hBrush=::CreateSolidBrush(RGB(255,0,0)); //创建画刷
pDC-> SelectObject(); //这一行怎么修改,需要参数类型是CBrush
pDC-> FillRect(rcTitle,&brbak);
-->
CBrush hBrush;
hBrush.CreateSolidBrush(RGB(255, 0,……
作者: caddor 发布时间: 2011-12-03
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28