MFC在非OnDraw、OnPaint中绘图
来源:互联网 发布:校园网络系统建设方案 编辑:程序博客网 时间:2024/05/22 05:18
MFC中,在OnDraw消息响应函数中,可以利用参数 pDC 绘图,如
void CXX::OnDraw(CDC* pDC){CLinkGameDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);if (!pDoc)return;// TODO: 在此处为本机数据添加绘制代码pDC->MoveTo(0, 0);pDC->LineTo(100, 100);}}但是,要想在别的地方绘图,如单击响应函数中绘图,就需要获得GDI对象,可以用CClientDC,如下
void CXX::OnLButtonDown(UINT nFlags, CPoint point){// TODO: Add your message handler code here and/or call defaultCClientDC dc(this);dc.MoveTo(0, 0);dc.LineTo(100, 100);//this->Invalidate();//调用Invalidate后,绘制内容将被擦除CView::OnLButtonDown(nFlags, point);}
另外OnDraw、OnPaint函数处理消息的区别:
void CView::OnPaint(){ CPaintDC dc(this); OnPreparDC(&dc); OnDraw(&dc); //调用了OnDraw}
在OnPaint中,会调用OnDraw,因此一般会在OnDraw中编写重绘代码
可以参考http://blog.csdn.net/tracing/article/details/2806156
- MFC在非OnDraw、OnPaint中绘图
- MFC中OnPaint()和OnDraw()
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnDraw与OnPaint的区别
- MFC中OnPaint和OnDraw的区别
- MFC中OnDraw与OnPaint的区别
- 几种PC常见的bootloader,在损坏几次后的总结
- JS判断滚动条是否停止滚动
- C++的构造函数和析构函数
- 程序设计基础之:运算符,表达式和语句
- VS2005下使用CPPUNIT进行单元测试(全过程)
- MFC在非OnDraw、OnPaint中绘图
- Bootloader in Windows
- 策略模式
- RubyMine scp远程同步部署代码
- Android学习笔记---24_网络通信之网页源码查看器
- uva 10196
- 2012-08-03 16:03 U-boot 之bootargs(转)
- Linux平台基于C编写的文本通信平台
- 算法分析与设计基础 学习笔记 第一章