MFC开发
文章平均质量分 60
MFC开发
JoliceYU
技术小白 一步一个脚印 不断努力不断学习
展开
-
如何在文档视图结构界面程序中弹出对话框并通过edit control控件传递数据
最近写一个MFC的界面程序,主界面一个基于单文档的视图结构,但是需要edit control传递一个数据值给一个变量,即需要手动设置一个参数。在基于对话框的界面中,要通过edit control控件传递一个数据给程序很简单。直接在工具箱中拖一个edit control控件到对话框界面上,再修改该控件的ID,并为其添加一个变量,注意选择所属的基类即可。但是在基于单文档的界面中就不行了,因为在原创 2017-02-28 16:11:34 · 1028 阅读 · 1 评论 -
MFC中获取文件路径和文件夹路径
最近做一个MFC的小界面,需要实现这样两个功能:1、在界面上加一个按钮,单击按钮弹出一个对话框选择文件,在工程中获得文件的路径;2、在界面上加一个按钮,单击按钮弹出一个对话框选择文件夹,在工程中获取文件夹的路径。一、获取文件的路径// -- 按钮的消息响应函数void CDialogSampled::OnBnClickedButtonOpen(){ // TODO: 在此添加控件通知处理原创 2017-09-20 15:28:26 · 15474 阅读 · 0 评论 -
MFC中向对话框中添加菜单栏方法
在MFC中一般基于对话框的MFC界面是没有菜单栏的,基于文档视图结构的MFC界面是有菜单栏的,那么怎么在基于对话框的MFC界面中添加菜单栏。下面是基于网上的博客啥的自己整理的。**一、在资源视图中将menu加入资源视图中1、在MFC中新建一个基于对话框的MFC界面工程,打开资源视图截图如下: 里面是默认没有menu资源的。这时就需要我们手动添加menu资源了。 2、在资源视图中添加menu资原创 2017-05-06 20:11:12 · 46221 阅读 · 7 评论 -
VS打开之前创建的MFC工程显示代码错误的解决办法
最近遇到一个问题,大概一个月之前用VS2012创建的MFC工程,现在还是用2012打开,但是代码中显示很多“无法识别的标识符”,截图如下:就是代码中会显示很多与MFC 有关的标识或者类名为“无法识别的标识符”,但是重新生成或者编译整个工程又没有任何错误,不过有时候也会有错误。最后的解决办法是:办法1:在工程的属性设置中,在“包含目录”中,将当前工程的目录的路径添加进去就可以了。办法原创 2017-05-25 10:36:32 · 885 阅读 · 0 评论 -
在共享Dll和静态库中使用MFC的区别
使用VS编译MFC工程是在项目属性中有一项MFC的使用,有三种设置: 1.使用标准Windows库 2.在共享DLL中使用MFC 3.在静态库中使用MFC 第一种顾名思义。 第二种指的是打包时一些MFC的DLL的内容没有被包含在EXE文件中,所以EXE文件较小,但是运行时要求系统中要有相关的DLL文件。第三种是将DLL中的相关代码转载 2017-05-05 15:18:23 · 1305 阅读 · 0 评论 -
MFC中子窗口调用父窗口资源的方法
在MFC中经常需要在一个窗口中弹出另一个窗口,比如在文档视图主窗口中弹出一个对话框进行信息交互。 这种情况在实现中,一般父窗口的类成员中有一个子窗口类的对象指针。比如在需要弹出对话框时候,可以利用DoMadol函数弹出对话框。但是如果在子窗口中需要对父窗口进行操作,需要怎么做呢。实例:在文档视图的父窗口中弹出一个非模态的子对话框,在改对话框中操作,可以实时改变父窗口中的显示。步骤和方法如下原创 2017-03-07 08:27:27 · 6988 阅读 · 1 评论 -
MFC中在picture control中显示图像的方法
在MFC中有一个控件picture control控件,利用该控件可以显示图像。在这里利用CxImage库、MFC中的picture Control控件显示图像的方法和步骤如下:1、新建基于对话框的MFC界面程序,在工程中配置CxImage库。配置之后的结果如下:同样在release版本下配置,不过引用路径要改成Release文件夹。同样在release版本下配置,添加的l原创 2017-03-05 08:20:40 · 19897 阅读 · 0 评论 -
MFC中将一个Button控件失效的方法
在MFC界面程序中,如果一个程序界面上有多个Button之类的按钮,有时候错按或者是多按会造成程序意想不到的结果。在合适的时候使相应的按钮“失效”是个不错的做法。1、定义CWnd类指针,获取按钮的ID。2、利用CWnd类的成员函数EnableWindow函数使按钮失效。eg://将“Button1”按钮失效CWnd *cSeBkBtnMy = GetDlgItem(IDC_BUT原创 2017-03-02 20:23:12 · 6094 阅读 · 0 评论 -
MFC中模态和非模态对话框的创建和区别
在MFC中,经常遇到弹出对话框进行信息交互,这时需要创建对话框。这种消息对话框分为两种:模态和非模态。区别:简单的说:模态对话框是你在弹出对话框之后必须对其作出响应和操作之后才能对对话框之外的其他程序的进行操作;非模态对话框就是在弹出对话框之后可以对弹出的对话框和对话框之外的应用程序同时进行操作,互不影响。模态对对话框的创建:在工程的资源视图中插入对话框,为其添加类;在父窗口的类声明中添加原创 2017-03-02 08:09:31 · 932 阅读 · 1 评论 -
MFC中OnInitDialog()函数的使用和使用SetWindowText()修改对话框的名称
在MFC中新建基于对话框的程序时,会使用到OnInitDialog()函数,OnInitDialog函数主要用于对话框对象初始化操作,比如:在对话框类的定义中有指针、数据或者布尔类型变量等,这些成员的初始化都可以放在OnInitDialog函数中。其函数原型是: virtual BOOL OnInitDialog(),是虚函数,在对话框显示之前被调用。1、有时候新建对话框程序的时候,Dlg原创 2017-03-01 19:25:11 · 17750 阅读 · 0 评论 -
MFC中UpdateData函数的使用
在MFC中经常需要用到edit control控件,通过该控件进行数据传递,特别是在对话框上,用户可以通过手动输入数据,将数据值传递给程序,特别是在一些软件算法需要设置参数的时候,很方便。这时,经常需要用到的就是UpdateData()函数。1、UpdateData(TRUE) -- 将控件中的数据值更新到相应的变量。2、UpdateData(FALSE) -- 将控件对应变量的值更新原创 2017-02-28 23:10:59 · 2485 阅读 · 0 评论 -
动态、静态编译以及MD、MDd、MT、MTd编译
一、问题的引出最近在VS2012中新建了一个MFC的工程,在自己电脑上运行很好,但是当拷贝到同学电脑上的时候一直出现“差dll”或者是“应用程序无法启动”的错误。后来找出原因,是自己编译的时候选择静态还是动态编译的问题。 解决办法1:让同学安装了VS2012,注意这里必须是和自己编译器相同的版本,比如是2013就不行。 解决办法2:在自己这边用静态编译,重新生成可执行文件即可。二、动态和静态编译原创 2017-05-08 15:13:35 · 3512 阅读 · 0 评论