MFC 关于对话框的注意点

1、对于模态对话框而言,单击确定以后对话框窗口对象即被销毁了,而对于非模态对话框来说,对话框的对象并未销毁而是隐藏起来(EndDialog函数),因此对于非模态对话框,必须重写OnOK这个虚函数,并在重写的函数中调用DestroyWindow函数,以完成销毁对话框的工作,同时注意不要再调用基类的OnOK函数。

2、当一个类从一个基类公有继承时,基类中的公有成员就如同派生类中定义的公有成员一样,这一点用sizeof函数就可以很明显的看出来。所以派生类对基类成员修改时,并不影响基类成员本身。

3、对静态文本控件,如果需要让其响应鼠标的按键操作时,必须将其ID改掉,因为其默认是不响应鼠标单击等消息的,并且Notify的属性也要改成True,否则不发送消息。

4、如果控件和类成员变量有了关联,如常用的编辑框的数据和变量有关联,要想将变量的值等于编辑框输入的值则必须调用UpdateData(true);反之,若想变量的值去改变编辑框里输出的值,则调用UpdateData(false);

5、修改Tab键的顺序快捷键,点击对话框中任意一个控件,按CTRL + D

时间: 2024-07-30 17:00:04

MFC 关于对话框的注意点的相关文章

直接执行-C++MFC基于对话框问题

问题描述 C++MFC基于对话框问题 我想让对话框一打开就直接执行命令,而不用去点按钮控件,请问代码写在哪? 解决方案 在生产代码的App 的InitInstance() 对话框类的构造函数 对话框类的OnInitDialog() 解决方案二: 在对话框的OnInitDialog()函数中

调试-【急】我在debug里运行成功,但是出不了mfc的对话框

问题描述 [急]我在debug里运行成功,但是出不了mfc的对话框 用release编译正常,我打开debug的文件夹,打开exe文件也不行,点了没反应... release里面的点开正常.这是怎么回事?以前都有用的,包括其他的程序都没问题,只有这一个程序有问题: 是代码里面删了什么东西还是设置了什么? 解决方案 debug和release的配置要相同才行. 比如:在debug下加载了一个库,那么在release下也要同样操作一遍,才能是配置相同. 解决方案二: debug和release的配置

事件 位图-VC/MFC 基于对话框程序,在主界面上左侧有五副位图,单击位图1覆盖原主界面,显示一个另一个界面

问题描述 VC/MFC 基于对话框程序,在主界面上左侧有五副位图,单击位图1覆盖原主界面,显示一个另一个界面 2C VC/MFC 基于对话框程序,在主界面上左侧有五副位图,单击位图1覆盖原主界面,显示自定义1的界面,同理单击位图2显示自定义2的界面,用代码如何实现,请各位指教.

代码合并-MFC把对话框添加到单文档中

问题描述 MFC把对话框添加到单文档中 MFC把对话框添加到单文档中,对话框已经在单文档下做好了,但是代码怎么加呢,代码需要加在什么地方呢?求大神帮忙,Vc作业,急需,谢谢.QQ:291119478 解决方案 这个很简单,你有两个办法: 思路1:新建单文档项目,然后最后一步让View从CFormView继承.产生的程序文档视图就是一个对话框界面,在资源中你可以看到这个对话框,把控件放进来,用ClassWizard映射好成员变量和事件处理程序,然后把代码粘贴过来. 思路2:将对话框程序的源代码和对

mfc-基于MFC的对话框绘制波形

问题描述 基于MFC的对话框绘制波形 现有一个txt的文本文件,里面存放着16进制的数据,MFC怎么获取这个数据并绘制出动态的波形 解决方案 MFC绘制有背景图像的对话框 解决方案二: http://download.csdn.net/download/tianyu524/1110247 解决方案三: CFile类打开读出文件,CDC类绘制窗口.

vc6中MFC基本对话框形式 怎么添加png图片?

问题描述 vc6中MFC基本对话框形式 怎么添加png图片? vc6中MFC基本对话框形式 怎么添加png图片? 发个源码过来就行了 谢谢 解决方案 源码没有,可以用GDI+库来帮助你添加png图片,搜索下有很多使用GDI+为MFC添加png图片例子的博文. 解决方案二: CXImage第三方库支持PNG 解决方案三: 用CImage类加载,调用他的Darw方法来贴图

软件-Euresys eVision不用图像卡将相机图片直接显示在MFC的对话框界面上

问题描述 Euresys eVision不用图像卡将相机图片直接显示在MFC的对话框界面上 在看Euresys eVision的图像处理软件,想知道不用它的图像卡怎么将相机采集回来的图像显示在界面上,编程环境是vc6.0基于对话框的

vc++6.0-VC++6.0 MFC基于对话框组合框中内容的判断

问题描述 VC++6.0 MFC基于对话框组合框中内容的判断 是这样的,我在模态对话框编辑框中输入一个值,点击确定添加到组合框项中,我想通过点击选择刚输入的项来实现某种功能.(*因为每次输入的值不同,这项的内容不同就不好判断了*)请高手指点应该怎么做?敬请详解 解决方案 int iPos=((CComboBox*)GetDlgItem(IDC_COMBO_CF))->GetCurSel(); //当前选中的行.

visual studio 2010-VS2010 MFC登录对话框打开数据库失败后意外出现主界面的问题

问题描述 VS2010 MFC登录对话框打开数据库失败后意外出现主界面的问题 用VS2010 MFC建立了一个主界面为对话框的函数,要求需要登录对话框,且通过读取数据库来校验用户,代码如下: BOOL CManagementDlg::OnInitDialog()//主对话框初始函数 { CDialogEx::OnInitDialog(); _CLogInDlg dlgLogin; if(dlgLogin.DoModal() != IDOK)//登录对话框 { OnOK(); return TRU

MFC中对话框的数据交换(DDX)和数据校验(DDV)

MFC中对话框的数据交换(DDX)和数据校验(DDV)<reference MFC TNO 26>DDX : dialog data exchangeDDV : dialog data validation文档描述MFC中的DDX DDV机制,如何使用DDX_和DDV_ 函数和定制自己的DDX_ ,DDV_函数: Dialog Data Exchange概要:对话框的数据交换不依赖于任何宏来实现,全部依赖于C++代码实现,唯一特别之处在于每一个对话框如果想处理自己的数据交互必须重载一个虚函数v