本文转载自:VC驿站

https://www.cctry.com/thread-297405-1-1.html

1、按钮控件的基本使用:
新建对话框工程,拖拽按钮控件,添加点击事件响应函数!
a、双击模版进行添加;
b、事件方式进行添加;

具体细节见视频教程讲解与演示!

2、删除按钮的点击响应函数:
一共要删除3个地方:
a、h头文件中的函数声明;
b、cpp文件中的函数定义;
c、cpp文件中的ON_BN_CLICKED宏绑定代码。

具体细节见视频教程讲解与演示!

3、按钮控件属性中的常用项讲解:
Disabled、ID、Visable

4、控件的启用与禁用:
HWND hBtn = ::GetDlgItem(m_hWnd, IDC_BTN_1);
::EnableWindow(hBtn, FALSE);

5、绑定控件类型变量:
刚刚我们想对按钮控件启用或者禁用之前必须先获得按钮控件的窗口句柄,也就是说如果以后要对这个按钮控件进行任何操作,都得先获取他的窗口句柄,之后才能操作,也就是都得调用这句话:HWND hBtn = ::GetDlgItem(m_hWnd, IDC_BTN_1);

比较麻烦是吧?有什么简单点的办法吗?答案是当然有了:就是绑定控件类型变量,具体绑定操作过程详见视频演示!
按钮控件在MFC中的关联类是:CButton

这样以后要进行按钮的禁用直接调用这句就可以了:
::EnableWindow(m_Btn.m_hWnd, FALSE);
或者
m_Btn.EnableWindow(FALSE);

6、控件的美化:
本身Windows自带的按钮控件就很普通,也不是很丑,但如果大家都一样就没什么意思了,况且有部分界面漂亮的软件放个普通的按钮在上面也显得不搭。所以很多人想着美化下控件。
微软也提供给我们控件的美化接口,那就是自绘,就是自己完全重新绘制控件的样子。其实控件的重绘是件非常麻烦的事情,类似按钮的倒还好,如果是类似列表控件那就更麻烦了。所以对于新手而言,或者说对于我们这种个人开发者没必要自己去从头重绘,如果是为了学习重绘的技术或者一款企业级的产品,那倒是可以使用重绘的方式来美化控件。而且这个美化控件这个东西一般都要有漂亮的图片为基础,所以有个会PS的同伴会比较好。

如果不想这么麻烦的重绘控件,还想要有效果的按钮控件怎么办?答案是:站在巨人的肩膀上,用现成的呗。肯定有高手事先都做好了,咱们直接拿过来用就可以了。具体我们可以在 codeproject 上面找开源的控件类,一般这些开源的控件类都是基于MFC中已有的各种控件的类,比如按钮的就是 CButton 的派生类,美化后的按钮效果如图:

怎么样,比VC中默认的按钮漂亮很多吧?那么具体如何来操作呢?怎么使用开源控件类呢?
还请大家观看视频教程,有详细的说明和演示!

第3课免费试看,下载地址:

https://www.cctry.com/thread-297405-1-1.html

《实用VC编程之玩转控件》第3课:Button按钮控件相关推荐

  1. 《实用VC编程之玩转控件》第1课:Windows编程简介

    本文转载自: VC驿站 https://www.cctry.com/thread-297374-1-1.html 0.开发环境: 操作系统:Microsoft Windows 7 Ultimate S ...

  2. 《实用VC编程之玩转控件》第15课:Tree树形控件

    本文转载自:VC驿站 https://www.cctry.com/thread-297465-1-1.html 1.控件简介: Tree树形控件也是我们编程过程中比较常用的一个控件,而且在其他软件中也 ...

  3. 《实用VC编程之玩转控件》第7课:ListBox 列表控件

    本文转载自 VC驿站: https://www.cctry.com/thread-297429-1-1.html 1.向列表框控件添加数据: a.向列表框的结尾添加数据: m_ListBox.AddS ...

  4. 《实用VC编程之玩转控件》第6课:ComboBox下拉框控件

    本文转载自:VC驿站 https://www.cctry.com/thread-297426-1-1.html 1.向下拉框控件添加数据: a.通过Data属性添加,以分号间隔: b.向下拉框的结尾添 ...

  5. python 按钮控件_python实现360皮肤按钮控件示例

    python实现360皮肤按钮控件示例. 代码: #!/usr/bin/python #-*-coding:utf-8-*- #site www.jbxue.com from PyQt4.QtGui ...

  6. 【窗体控件】:Button按钮控件

    1.命名空间与继承 命名空间:System.Windows.Forms 继承:Object→MarshalByRefObject→Component→Control→ButtonBase→Button ...

  7. tkinter中button按钮控件(三)

    button控件 简单的实现: 1 import tkinter 2 3 wuya = tkinter.Tk() 4 wuya.title("wuya") 5 wuya.geome ...

  8. python的按钮控件_python实现360皮肤按钮控件示例

    代码如下: #!/usr/bin/python #-*-coding:utf-8-*- from PyQt4.QtGui import * from PyQt4.QtCore import * fro ...

  9. 【Unity-UGUI控件全面解析】| Button 按钮组件详解

最新文章

  1. “智能经济”浪潮下,百度为何强调“人格化”与“服务化”?
  2. android 自定义switch控件,Android中switch自定义样式
  3. Java中String为什么是final
  4. linux下搭建FTP服务器
  5. Leetcode--300. 最长上升子序列
  6. bag文件加载及可视化显示
  7. 轻松看懂概率论与图论基础数学知识
  8. 数据库创建索引的规则
  9. 【基于MATLAB的数字图像处理】第六章·形态学图像处理
  10. 【Android实战】json解析+GridView自适应布局+图片加载
  11. 迅雷手机版苹果版_免费下载迅雷 iOS 版
  12. C++获取成员变量的偏移地址
  13. Java集成socket.io
  14. 计算机专业博士阶段研究方向,国内计算机专业博士研究方向
  15. java银器锁,银器保值吗?S925、S990、S999又是什么银……
  16. 第二章 预习导图 部署DNS服务
  17. Flink CDC 将MySQL的数据写入Hudi实践
  18. Go问题/知识收集 - 1
  19. 实体关系抽取几篇论文
  20. 蒂森mc2服务器老显示fc00,蒂森电梯故障代码

热门文章

  1. redis文件事件和时间事件
  2. 美的2021高频题汇总 | 备战春招,刷这30题就够了!
  3. 清明节网站变灰是如何实现的
  4. 汽车电子功能安全标准ISO26262解析(一)——总述部分
  5. 国产CPU架构、国产Linux操作系统及其国产数据库等关键应用
  6. Mathtype部分数学符号只能显示方框时的解决办法
  7. “孙宇晨们”眼中的区块链,并非国家提倡的区块链
  8. 只会用 xxl-job?更强大的新一代分布式任务调度框架来了!
  9. 蓝桥杯真题 15省2-星系炸弹 在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。 每个炸弹都可以设定多少天之后爆炸。 比如:阿尔法炸弹2015年1月1日放置,定时为15天,则
  10. oracle中yest,在Oracle中声明YESTERDAYS日期作为变量