文章推荐:VC++6.0入门——第六讲 菜单编程
文章链接:https://cloud.tencent.com/developer/article/2467679
文章简介:本文详细介绍了VC++6.0入门——第六讲 菜单编程,对于我这种刚接触VC++ 6.0的新人来说很有帮助,一步步贴图进行教学菜单编程,值得学习!
每天学习一点MFC的小知识!
说起来很高大上,其实就是前端界面控件和后台代码命名的绑定。当前端控件执行某些操作时,需要把这个事件或消息映射到MFC的成员类上。通过这种方式让后台代码可以响应前端事件和消息,完成指定操作。
具体代码是什么呢?

首先,我在界面上放置了一个按钮和Tab控件。后端如何知道前端控件的呢?
用于在对话框控件和对应的变量之间进行数据交换的函数。
void CMFCtest1Dlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX, IDC_TAB1, Tab1);
DDX_Control(pDX, IDC_BUTTON1, m_Btn1);
}
BEGIN_MESSAGE_MAP(CMFCtest1Dlg, CDialogEx)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON1, &CMFCtest1Dlg::OnBnClickedButton1)
ON_NOTIFY(TCN_SELCHANGE, IDC_TAB1, &CMFCtest1Dlg::OnTcnSelchangeTab1)
END_MESSAGE_MAP()
这里要注意类列表的选择,如果Btn控件在Dlg1中的控件选择了Dlg2的类列表,会出现Dlg2中无Btn1控件而报错!
在WPF中,.xaml文件中定义控件名称,并在后面直接可以添加事件或双击控件添加。这时,界面前端的代码中会具体显示事件函数名称,而后端会主动生成对应的函数。
//前端
<Button x:Name="button" Content="Button" HorizontalAlignment="Left" Margin="112,187,0,0" VerticalAlignment="Top" Width="75" Click="button_Click"/>
//后端
private void button_Click(object sender, RoutedEventArgs e)
{
}相对于MFC的添加事件,在使用上来说,WPF的事件生成更容易,上手更简单!
本文介绍了MFC的消息映射,并举例说明,同时也与WPF进行了对比。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。