知道/不知道的都进来:关于 OnPaint, OnPrint, OnDraw 和 DrawItem

码农猿圈圈 2001-09-04 01:23:50
OnPaint, OnPrint, OnDraw 和 DrawItem:
这几个函数作用是什么?
它们之间有什么区别和联系?
什么情况下用哪一个比较好?
...全文
227 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
quengzi 2001-09-05
  • 打赏
  • 举报
回复
: rushing() 很好呀!!!!: Anaki(让风吹) UP
码农猿圈圈 2001-09-05
  • 打赏
  • 举报
回复
多谢 rushing 的说明!
码农猿圈圈 2001-09-05
  • 打赏
  • 举报
回复
蒋晟的意思是OnPaint和OnPrint都会调用OnDraw,只是传递的设备句柄不同,是吧!?
码农猿圈圈 2001-09-05
  • 打赏
  • 举报
回复
兄弟们,来呀!
软件界面要想有自己的风格,少不了要和这几个函数打交道的!
rushing 2001-09-04
  • 打赏
  • 举报
回复
OnPaint:
TheWM_PAINT message is sent when the UpdateWindow or RedrawWindow member function is called.

OnDraw:
Called by the framework to render an image of the document. The framework calls this function to perform screen display, printing, and print preview, and it passes a different device context in each case. There is no default implementation.

OnPrint:
Called by the framework to print or preview a page of the document. For each page being printed, the framework calls this function immediately after calling the OnPrepareDC member function. The page being printed is specified by the m_nCurPage member of the CPrintInfo structure that pInfo points to. The default implementation calls the OnDraw member function and passes it the printer device context.

DrawItem:
Called by the framework when a visual aspect of an owner-drawn button has changed. An owner-drawn button has the BS_OWNERDRAW style set. Override this member function to implement drawing for an owner-drawn CButton object. The application should restore all graphics device interface (GDI) objects selected for the display context supplied in lpDrawItemStruct before the member function terminates.



wangxuan0314 2001-09-04
  • 打赏
  • 举报
回复
一时也说不清楚,去翻一下书
zhanghy 2001-09-04
  • 打赏
  • 举报
回复
去看《VC技术内幕》吧
蒋晟 2001-09-04
  • 打赏
  • 举报
回复
OnDraw 用来在OnPaint和OnPrint里面画

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧