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, CDialogEx
ON_BN_CLICKED(IDC_BUTTON, &CinterfaceDlg::OnBnClickedButton)
END_MESSAGE_MAP()
- cpp中添加回调函数的实现
void CinterfaceDlg::OnBnClickedButton()
{
// TODO: 在此添加控件通知处理程序代码
}