[MFC]传统控件介绍、CButton按钮类

本文详细介绍了MFC中的控件概念,重点讲解了CButton类,包括不同类型的按钮、创建方法及消息处理机制。CButton不仅包含标准下拉按钮,还涵盖复选框、单选框等,通过设置不同样式实现各种功能。
摘要由CSDN通过智能技术生成

1. 控件的概念:

    1) 控件是一类特殊的窗口,如按钮、文本框之类的,用来将信息传送给用户或获取用户的输入;

    2) 控件都是一些高度封装好的对象,有自己的WM_PAINT处理代码,不必用户自己去重绘控件;

    3) 控件的消息机制:当点击控件等操作发生时,用户不用具体去处理这些鼠标消息,MFC会处理这些最基本的控件上的消息并将其转化为“通知”(Notify),比如点击按钮时不需要用户去处理按钮的ButtonDown消息,而是MFC将这种消息转化为一个BN_CLICKED通知,然后用户只需要响应OnButtonClicked函数即可;

!!通知消息:

        a. 一般普通消息,如WM_LBUTTONDOWN、WM_PAINT等都是基本的消息,这些消息直接反应了触发消息的事件;

        b. 通知消息是一种特殊的Windows消息,它主要来自控件,虽然触发通知的都是一些基本消息,如BUTTONDOWN等,但Windows将它们转换成控件发出的通知,通知消息直接反应了触发控件的事件;

    4) 控件一般都挂载其它窗口上,因此控件都是其它窗口的子窗口,所以控件有时也叫子窗口控件:

         i. 父窗口移动控件就会跟着移动;

         ii. 父窗口被销毁控件也会跟着被销毁;

         iii. 这些动作都由MFC自动完成;


2. 传统控件:

    1) Windows目前用于20多种控件,其中6种为传统控件,这6种传统控件在Windows的第一个版本中就已经出现;

    2) 传统控件和相应的MFC类:从左到右分别是控件类型、WNDCLASS注册时的名称和MFC类

按钮   "BUTTON"   CButton

列表框   "LISTBOX"   CListBox

编辑控件   "EDIT"   CEdit

组合框   "COMBOBOX"   CComboBox

滚动条   "SCROLLBAR"   CScrollBar

静态控件(静态文本等)   "STATIC"   CStatic

    3) 创建控件也很简单,只需要先创建对象,然后调用对象的Create函数即可,如果希望控件中有一些扩展的样式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值