VC++中Windows常用控件的使用方法详解
需积分: 9 141 浏览量
更新于2024-12-04
收藏 128KB DOC 举报
VC中Windows常用控件使用
在VC++中,Windows常用控件是指Windows系统预定义的标准控件,如按钮控件、编辑控件和列表控件等。这些预定义控件实际是一种特殊的子窗口,主要供用户同应用程序的交互之用。每一个预定义控件也都是由所属的窗口类规定了自身的外观属性和具有的功能。
Windows系统通过预定义的方式提供了一些标准控件的窗口类名,在程序设计时只需通过调用CreateWindow()函数或CreateWindowEx()函数,并将预定义的窗口类名作为参数传入即可创建出相应的控件。当用户通过屏幕对象同控件进行交互操作时,控件将以"通知消息"的形式向父窗口发送WM_COMMAND通知消息,消息的wParam参数含有控制标识,在lPamam参数的高位字和低位字中分别含有通知码和控制句柄,由父窗口完成对消息的响应处理。
按钮类控件是窗口类名被系统预定义为BUTTON的一类控件,该类控件具有十余种不同的窗口风格,包含了普通的下压式按钮、单选按钮、复选按钮和分组框等多种常用的按钮形式。具体情况列表如下:
* BS_AUTOCHECKBOX:同复选按钮类似,点击一下选中,再次点击取消。
* BS_AUTORADIOBUTTON:同单选按钮类似,点击后选中标志将从同组的其他单选按钮处移到当前选项。
* BS_AUTO3STATE:同三态复选按钮类似,只是在用户点击后改变状态。
* BS_CHECKBOX:复选按钮
* BS_DEFPUSHBUTTON:下压按钮,具有较黑的边框。
* BS_GROUPBOX:分组框
* BS_LEFTTEXT:同单选按钮或复选按钮配合使用,标题将显示在左侧。
* BS_OWNERDRAW:可创建一个拥有者自绘按钮。
* BS_PUSHBUTTON:普通下压按钮
* BS_RADIOBUTTON:单选按钮
* BS_3STATE:三态复选按钮
这些按钮风格通常需要同窗口风格共同使用,由CreateWindow()函数或MFC的CBuutton类成员函数Create()完成对按钮的创建:
DWORD STYLE[9]={
BS_AUTOCHECKBOX,
BS_AUTORADIOBUTTON,
BS_AUTO3STATE,
BS_CHECKBOX,
BS_DEFPUSHBUTTON,
BS_GROUPBOX,
BS_LEFTTEXT,
BS_OWNERDRAW,
BS_PUSHBUTTON,
BS_RADIOBUTTON,
BS_3STATE
};
在实际开发中,我们可以根据需要选择合适的按钮风格来创建按钮控件,并通过设置按钮的风格和属性来实现不同的交互效果。
此外,还有其他类型的控件,如编辑控件、列表控件、组合框控件等,每种控件都有其特定的用途和使用方法。了解这些控件的使用方法是VC++开发的基础,熟练掌握这些控件的使用可以提高开发效率和质量。
VC++中Windows常用控件的使用是非常重要的,它们提供了丰富的交互方式和功能,可以满足不同类型的应用程序的需求。了解和掌握这些控件的使用方法是VC++开发的基础。
2007-07-13 上传
2008-09-22 上传
2015-02-04 上传
2012-05-28 上传
2011-06-27 上传
2011-12-13 上传
2011-02-28 上传
338 浏览量
2019-04-01 上传
caonimagrh5566
- 粉丝: 0
- 资源: 1
最新资源
- Gotham —一种灵活的Web框架,不牺牲安全性,安全性或速度。-Rust开发
- latlong:纬度和经度选择器
- 基于Qt 构建、C++ 作为底层开发的学生成绩管理系统源码+项目说明(支持对学生成绩的增删改查、排序、汇总等功能).zip
- IRF.rar_IR_IRF_效应管
- Python库 | galaxy_importer-0.1.8-py3-none-any.whl
- Protect My Choices-crx插件
- 海康监控Web SDK Html Javascript
- Lawnet Downloader:为 SMU 和 NUS 学生设计的 Lawnet 下载器-开源
- Aura GUI freedos:Freedos的图形用户界面-开源
- intekTraining:intekglobal培训
- 电子功用-基于CAN总线的电力监控传输系统
- 基于深度学习的伪造人脸视频生成技术研究.zip
- Jack2DSSI:将任何Jack客户端转换为DSSI插件-开源
- quqi.rar_mtk_mtk software_mtk平台
- decisions:一个简单的 ruby 脚本来评估最佳交通方式
- Python库 | gaiaengine-0.1.2-cp38-cp38-manylinux2010_i686.whl