- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MFC对话框添加最小化按钮和提示栏,mfc对话框最小化,mfc对话框关闭按钮,mfc按钮弹出对话框,mfc按钮打开对话框,mfc最小化按钮,mfc添加最小化按钮,mfc打开文件对话框,mfc弹出对话框,mfc对话框背景图片
用 VC++6.0 为对话框添加最小化按钮和提示条
DIV
id=contentscript
src=/mx/baid.jsDIV
id=viewadscript
src=/a/lw.js
摘
要
本文通过实例介绍了用 VC++6.0 为对话框添加最小化按钮和提示条的方法和原理
关键词
对话框
最小化按钮
提示条
我们在使用对话框窗体时,会有这样一种感受:当对话框窗体位于其它程序窗口界面上时,
单击对话框外区域时,可使对话框窗体最小化;而当对话框窗体位于桌面上时,无论怎样单
击对话框外区域,对话框均不能最小化,只能选择关闭。但有时我们在使用对话框时,还希
望能根据需要使对话框具有最小化功能。本文的设计思想就是据此提出来的。
1
实例程序设计要点
⑴
取得对话框标题栏位置和大小,在标题栏的适当位置绘制最小化按钮,并记住按钮的位置。
⑵
在最小化按钮所在区域检测鼠标是否在该区域内、是否按下,是否发送最小化消息使对话框
最小化,否则不变。
⑶
将最小化按钮矩形区域向工具提示条控件注册,这样当鼠标在最小化按钮矩形区域时,显示
提示文本。
2
实例程序实现的步骤及说明
⑴
准备二个位图,一个位图表示最小化按钮正常显示状态,另一个位图表示最小化按钮被按下
时的状态。
⑵
使用 MFC
AppWizard(exe)创建工程名为 MinButton 的对话框窗体,如图所示,将二个按钮位图导入对
话框的资源里。
⑶
在 CMinButtonDlg 对话框类中进行变量定义和函数声明。
⑷
利用 ClassWizard 为对话框类添加消息 WM_NCPAINT,WM_ACTIVATE 和 WM_NCMOUSEMOVE 的消息
处理函数,在这三个函数中调用成员函数 DrawButton()来绘制按钮。
⑸
利用 ClassWizard 为最小化按钮关联对应的消息 WM_NCLBUTTONDOWN 和消息处理函数
OnNcLButtonDown(UINT
nHitTest,
CPoint
point)。
⑹
函数 DrawButton()用于绘制按钮。由于最小化按钮并不是一个真实的按钮控件,而是一个画
在标题栏上的位图。因此,为了在对话框窗体标题上绘画,必须创建一个窗口设备环境类(相
当于创建一个画布,有了这个画布,才能在画布上绘画,也就是才能在标题栏上绘画。)
①
调用函数 GetWindowDC()取得指向 CDC 的指针
CDC*
pDC;
②
调用函数
CreateCompatibleDC(CDC*
pDC)创建一个内存设备环境,以便在内存中保存位图,并与指定的窗口设备环境相兼容;
③
调用函数 SelectObject(CBitmap
*pBitmap),将位图选入内存设备环境中;
④
调用函数
BitBlt(int
x,
int
y,
int
nWidth,
int
nHeight,
CDC
*pSrc,
int
xSrc,
int
ySrc,
DWORD
dwRop)将位图复制到实际设备环境中。其中,参数 x,
y
表示位图目标矩形左上角的 x,
y
逻辑坐标值;nWidth,
nHeight
表示位图目标矩形的逻辑宽度和高度;pSrc
表示源设备环境 CDC 指针;xSrc,
ySrc
表示位图源矩形的左上角的 x,
y
逻辑坐标值;dwRop
表示显示位图的光栅操作方式。光栅操作方式有多种,这里使用的是 SRCCOPY,表示将位图
直接复制到目标内存设备环境中。这里要说明一点:函数 BitBlt()只能 “一比一”的显示位
图,如要任意缩放显示位图须使用函数 StretchBlt(),该函数的使用方法,请参考相关书籍。
⑤
位图选入内存环境中显示后,应调用函数 SelectObject(CBitmap
*pOldBitmap)恢复原来的内存设备环境。
⑺
提示条实质上是一个小的弹出窗口,在窗口中显示一行文本,用来描述工具(或区域)的用
途或其它信息。在 MFC 中提供了工具提示条控件类 CToolTipCtrl,由它来管理提示条。在这
里,我们从 CToolTipCtrl 类派生子类 CToolTips。在子类的定义中添加函数BOOL
AddToolTip(
UINT
nID,
LPRECT
lpRect,
LPCTSTR
lpszText),该函数用于向工具提示条控件注册按钮区域和提示文本,当鼠标在最小化按钮区
域时,显示提示文本。
用 VC++6.0 为对话框添加最小化按钮和提示条(2)
DIV
id=con
您可能关注的文档
- 66KV屋外配电装置安装作业指导书.doc
- 6、避雷器的试验、监测与故障诊断.pdf
- 6组合开关说明书.doc
- 72.5kV隔离开关技术协议.doc
- 8.2 电压比较器.ppt
- 80K6+打印模块说明.pdf
- 8通道触摸感应按钮芯片规格书-LH828A.pdf
- 9.电气系统运行.doc
- 9、避雷器的试验、监测与故障诊断.pdf
- A319飞行操纵系统总结(中文全彩页PDF).pdf
- 2019-2020学年高中英语Unit3AustraliaSectionⅡLearningaboutLanguage练习新人教版选修9.docx
- 2.2气候基本特征(课时2)(练习)-2022-2023学年八年级地理上册优质(商务星球版)(原卷版).docx
- 东方锅炉股份有限公司德阳职工住宅门窗工程监理细则.doc
- 黄金卷08(原卷版)3.docx
- 211活泼的金属单质钠(课件精讲)-高一化学课件精讲习题精练(人教2019).ppt
- 四川省自贡市旭川中学2023-2024学年高二下学期第一次月考适应性检测数学试题(A卷).docx
- (必威体育精装版)大象版小学科学二年级下册期中测试卷(含答案)2.docx
- 2019-2020学年高中物理第一章运动的描述第四节物体运动的速度学案粤教版必修1.docx
- 2019-2020学年高中物理第四章牛顿运动定律专题强化瞬时加速度问题和动力学图象问题学案新人教版必修1.docx
- 专题六元素周期律与元素周期表(专练)-冲刺2023年高考化学二轮复习核心考点逐项突破.docx
最近下载
- 大学科技创新平台管理办法(修订).pdf
- 2024届高考专题复习:语言文字运用指导 课件96张.pptx VIP
- 益丰5000吨年生物制剂(微生物水处理剂)项目报告表(最终版).docx
- 新人教小学五年级数学上册《植树问题(三)》示范教学课件.pptx
- 银行业安全保卫工作培训.pptx
- 2024年08月苏州工业园区行政审批局辅助人员公开招聘2人笔试历年典型考点解题思路附带答案详解.docx VIP
- 2017年在全县固定资产投资工作培训调度会上的发言 高度重视+落实责任+加快建设+严格奖惩.doc VIP
- 建筑电气工程安全和功能检验资料核查及主要功能抽查记录.docx VIP
- 质量管理自查制度.docx VIP
- 神经病理性疼痛评估与管理中国指南(2024版)要点.pdf
文档评论(0)