代码如下
//创建字体
HFONT hfontnew =CreateFontA(10,5,0,0,FW_NORMAL,0,0,0,ANSI_CHARSET,0,0,0,0,"Arial");
CClientDC dc(this);
SelectObject(dc,hfontnew);
CRect rect;
this->GetClientRect(&rect);
CBrush brush(RGB(0,0,0));
dc.SetBkColor(RGB(0,0,0));
dc.SetTextColor(RGB(255,255,255));
以上代码在子对话框的计时器中运行,用于刷新该子对话框背景(整个对话框,无标题栏),总共有10个子对话框。
运行一段时间之后,所有绘图都绘到了主对话框区域(位置从原点开始,因为刷新子对话框是刷新整个,所以RECT.LEFT 和RECT.TOP都为0),这时鼠标点击主对话框出错我想问一下上述代码是否有问题?是RECT的问题还是DC的问题
//创建字体
HFONT hfontnew =CreateFontA(10,5,0,0,FW_NORMAL,0,0,0,ANSI_CHARSET,0,0,0,0,"Arial");
CClientDC dc(this);
SelectObject(dc,hfontnew);
CRect rect;
this->GetClientRect(&rect);
CBrush brush(RGB(0,0,0));
dc.SetBkColor(RGB(0,0,0));
dc.SetTextColor(RGB(255,255,255));
以上代码在子对话框的计时器中运行,用于刷新该子对话框背景(整个对话框,无标题栏),总共有10个子对话框。
运行一段时间之后,所有绘图都绘到了主对话框区域(位置从原点开始,因为刷新子对话框是刷新整个,所以RECT.LEFT 和RECT.TOP都为0),这时鼠标点击主对话框出错我想问一下上述代码是否有问题?是RECT的问题还是DC的问题
解决方案 »
- 求一个速度快的 标准DES程序 ??
- 关于sql serve添加数据的问题
- MoveFileEx问题,高手请进
- GIF文件处理问题
- 想动态创建一个窗口并显示文字该怎么做?
- 还有一个问题---我想加入用ADO加入一副图片的地址
- 高分求.SDK 编程中,已知对话框的句柄与该对话框上一个子窗口的ID ,如何取得该ID 的句柄...
- ASSERT_VALID(pDoc)是用来做什么的?谢谢大虾们
- 请各位赐教 局域网问题 送上100分
- 第一次点菜单的open打开一个数据文件时,会自动调用CXjjDoc::Serialize(CArchive& ar),但当我回过头来第二次打开同一个文件时,调试跟踪标明不能进入CXjjDoc::Serialize(CArchive& ar),为什么呢?
- 如何用鼠标精确定位插入符的位置!重写edit控件
- 实际亮度值转化为灰度值,有什么算法?
DeleteObject( hfontnew );
brush.DeleteObject();
看看还有没有上述问题
这些都是windows gdi对象
在确信不会用到之后,必须调用相应的delete方法进行资源回收,否则系统会因为资源不足产生绘制错误。你可以打开你的资源管理器,在"查看->选择列"页面把"GDI对象"打勾(前提是你当前查看的是"进程"页),这样你就能看到你的程序在运行过程中是否存在未释放GDI对象的情况.