MFC之Button按键控件
MFC
一.操作控件的方式
1.获取控件的句柄操作
GetDlgItem(IDC_BUTTON); //IDC_BUTTON 控件的ID
2.设置变量控制
可直接右键点击控件,选择添加变量,完成后就会在文件中自己生成相应的代码
在类当中会声明成员变量
CButton m_btn1;
在cpp文件中会添加ID的对应关系
void CinterfaceDlg::DoDataExchange(CDataExchange* pDX)
{CDialogEx::DoDataExchange(pDX);DDX_Control(pDX, IDC_BUTTON, m_btn1);
}
后面就可以进行操作了
二.按键的各操作
1.设置按键文字
- 可以右键按键,在属性中找到 Caption,输入按键上要显示的内容就可以了
有时候显示出来是好多?问号,需要在将整个窗口界面的语言设置为中午简体(在资源视图Dialog下找到含按键的视图,右键属性最后一项进行设置)
- 用下面代码进行设置
m_btn1.SetWindowText("按键");
GetDlgItem(IDC_BUTTON)->SetWindowText("按键");
2.设置大小和位置
设置大小和位置可以用鼠标在窗口界面拖拉的方式操作,也可以通过下面函数操作
m_btn.SetWindowPos(NULL, 0, 0, 100, 80, SWP_SHOWWINDW);
GetDlgItem(IDC_BUTTON)->SetWindowPos(NULL, 0, 0, 100, 80, SWP_SHOWWINDW);
SetWindowPos函数之前有说过,2,3参数设置位置,4,5参数设置大小 SetWindowPos函数也可以操作
不明白可以看这篇:MFC组件大小设置
3.设置按键使能
可以控制按键可不可以被按下
//不能按下
m_btn1.EnableWindow(FALSE);
GetDlgItem(IDC_BUTTON)->EnableWindow(FALSE);//可以进行操作
m_btn1.EnableWindow(TRUE);
GetDlgItem(IDC_BUTTON)->EnableWindow(TRUE);
4.设置按键隐藏和显示
//隐藏
GetDlgItem(IDC_BUTTON)->ShowWindow(SW_HIDE);
//显示
GetDlgItem(IDC_BUTTON)->ShowWindow(SW_SHOW);
5.按键回调函数
在界面视图中,左键双击按键,就会生成相应的按键回调函数,当软件运行按键被按下就会执行回调函数
具体生成了如下代码
- 在窗口类中添加了成员函数
public:afx_msg void OnBnClickedButton();
- 在cpp文件中创建消息映射
BEGIN_MESSAGE_MAP(CinterfaceDlg, CDialogExON_BN_CLICKED(IDC_BUTTON, &CinterfaceDlg::OnBnClickedButton)
END_MESSAGE_MAP()
- cpp中添加回调函数的实现
void CinterfaceDlg::OnBnClickedButton()
{// TODO: 在此添加控件通知处理程序代码
}
MFC之Button按键控件相关推荐
- MFC中的edit控件
edit control 编辑框 static control 静态文本框控件 Button 按钮控件 第一步,在VS2019中新建一个MFC项目: 第二步,打开资源视图,双击打开窗口,在工具栏中选择 ...
- MFC中动态创建控件以及事件响应实现方法
本文实例讲述了MFC中动态创建控件以及事件响应实现方法,分享给大家供大家参考.具体实现方法如下: 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态 ...
- MFC中动态创建控件以及添加事件响应
本文实例讲述了MFC中动态创建控件以及事件响应实现方法,分享给大家供大家参考.具体实现方法如下: 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态 ...
- VC MFC列表视图(CListCtrl)控件
VC MFC列表视图(CListCtrl)控件 列表视图控件 图标风格 CListCtrl类里要了解的函数 SetImageList为列表控件关联一个图像列表 InsertItem插入一项 GetSe ...
- mfc调取摄像头显示并截图_用OpenCV在MFC Dialog中Picture控件上显示摄像头采集实时视频...
OpenCV之所以能在MFC Dialog的Picture控件上绘图,全靠了CvvImage::DrawToHDC()方法.这就是下文为出现CvvImage和HDC的原因.下面是具体过程,用OpenC ...
- VC6.0 MFC 列表框 列表控件 添加 修改 删除
VC6.0 MFC 列表框 列表控件 添加 修改 删除 写在前面:列表框是很常用,并且很重要的一个控件,那么接下来,就跟随我的脚步,去探索它的奥秘吧! 一.未卜先知 1.编译运行后,点击"学 ...
- MFC笔记2(控件位置调整)
1.根据计算,使用GetClientRect(& ...)就可以调整好 2.遇到了OK和Cancel按钮通过GetDlgItem(ID..)找不到id资源号的情况,最后通过给控件绑定控件变量到 ...
- MFC工程使用flash控件
利用flash可以作出很漂亮的动画,想不想让自己的程序也有这样漂亮的界面呢?^_^,其实,要做到这点也不难.在这里将介绍怎样把falsh制作的界面嵌入到自己的程序中,并让flash动画和自己的程序进行 ...
- MFC如何调用Flash控件
新项目中需要在mfc框架中播放swf,因此决定使用flash控件: 第一步:在本机安装flash10 Flash activex控件一般安装在用户系统目录下:C:\WINDOWS\system32\M ...
最新文章
- Open×××的Linux内核版,鬼魅的残缺 part I:The PROTOCOL
- 为MyEclipse加入自己定义凝视
- 显示日历的指令:cal
- php要懂函数吗,九个你需要知道的PHP函数和功能
- 解码Core ML YOLO对象检测器(二)
- react native在static中使用this方法
- Linux kmalloc/kfree 源码解读
- Java 线程 fork join 是什么 怎么用
- linux centos目录结构(一)
- 局域网带宽控制解决方案-P2P终结者使用详解
- keil5安装教程及下载
- 实验三 高速公路收费站双收费口仿真
- Object类的常用方法
- 【Go】用 Go 访问 Redis
- windows下通过关键字批量删除远程k8s下deployment及pods
- LeetCode 518 Coin Change 2 (python)
- PostgreSQL 15 preview -:你了解PostgreSQL GUC 参数吗?
- “/”与“\”以及“//”与“\\”之间的区别 (转)
- HTTP协议格式以及Fiddler用法
- HFirst解读和复现心得