面向对象和可视化程序设计第8章.ppt

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 文本与字体 Huang Weitong 面向对象与可视化 程序设计 --Visual C++ 编程 主讲教师: 唐 龙教授 (计算机科学与技术系) 黄维通博士 (计算机与信息管理中心) 清 华 大 学 2001年2月 第八章 Windows的 标准控件 内容提要 控件的基本概念 常用子窗口操作函数 按钮控件 滚动条控件 静态控件 列表框控件 编辑框控件 组合框控件 §8.1. 控件的基本概念 1.控件是用户交互的操作对象 界面的主要组成之一,用户交互的操作对象。 具有窗口属性,可用ShowWindows()和MoveWindows()等窗口管理函数来显示或隐藏控件、改变控件的位置、尺寸以及其它操作。 系统预定义标准控件的窗口类: BUTTON 按钮控件 COMBOBOX 组合框控件 EDIT 编辑框控件 LISTBOX 列表框控件 SCROLLBAR 滚动条控件 STATIC 静态控件 2.控件的创建 控件以两种形式存在: 依附于对话框; 独立的子窗口。 两种创建方法: 启动话框时,系统为对话框创建其中的控件,如按钮控件。 调用CreateWindows()或CreateWindowsEx()函数创建独立的子窗口控件。创建时必须指定控件的窗口类 控件的窗口类可在应用程序中定义并注册或由系统预定义。 3.控件的消息传递 子窗口控件向其父窗口发送WM_COMNAND消息,其中 wParamc参数包含子窗口 的ID; IParam参数包含子窗口的句柄和通知代码。 通知代码通报了子窗口控件操作,例如: BN_CLICKED——在按钮子窗口中单击 EN_HSCROLL——在编辑子窗口中激活水平滚动条 ……(参见教材P186,表8-2) 滚动条控件,不发送WM_COMNAND消息,发送WM_HSCROLL或WM_VSCROLL消息。 4.向控件传递的消息 调用函数SendMessage向子窗口发送消息, static LRESULT SendMessage( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam ); 例如,用户单击按钮时,向该按钮发为设置按钮选中消息BM_SETCHECK,其形式为: SendMessage(hwndRadioButton,BM_SETCHECK,1,0); 调用函数SendDlgItemMessage向指定的对话框控件发送消息,其形式为: SendDlgItemMessage(hdlg,ID,message,wParam,lParam); §8.2. 常用子窗口操作函数 §8.3. 按钮控件 1.按钮控件的分类 普通按钮和默认按钮 圆按钮 单选按钮:编程确保互斥性 自动按钮:自动实现互斥性 复选框按钮 组框:按钮分组 2.按钮控件的创建 按钮控件的创建方式 在对话框中定义控件 创建控件型的子窗口,包括两个步骤: 创建并注册一个窗口类的实例 创建并显示窗口实例 3.按钮控件向应用程序传递消息 当用户与控件交互操作时,控件向其父窗口发送WM_COMMAND消息,其wParam参数: 低字节包含控件的标识值(ID); 高字节中包含控件向父窗口发出的通知代码。 按钮控件的通知代码: BN_CLICKED 单击按钮 BN_DOUBLECLICKED 双击按钮 BN_SETFOCUS 按钮获得输入焦点 BN_KILLFOCUS 按钮失去输入焦点 4.应用程序向按钮控件传递消息 调用函数SendMessage向按钮控件发出消息,其格式: SendMessage(hwnd,message,wParam,lParam); 4.应用程序向按钮控件传递消息(续) 对同样的消息,字参数不同,动作也不同,例如,设置/取消选中标志, 若字参数应取1,则设置标志 SendMessage (hwnd,BM_SETCHECK,1,0); 若字参数应取0,则设置标志 SendMessage (hwnd,BM_SETCHECK,0,0); 相应于对话框按钮控件,则改调用函数SendDlgItemMessage(hdlg,ID,message,wParam,lParam); 5.按钮控件示例 【例8-1】创建如右上图的按钮控件系列,当单击每一个按钮后,就出现如右下图所示的响应。 [注]程序清单参见教材p192-197 §8.4. 滚动条控件 1. 滚动条控件的功能与分类 滚动条控件的功能——当应用程序显示的内容超过窗口的范围时,用户可通过拖动滚动条遍历整个窗口内容。 滚动条分为垂直与水平滚动条,分别实现窗口内容纵向和横向的滚动。 2. 滚动条控件的创建 三种创建方法: 创建窗口滚动条; 创建滚动条子

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档