使用计时器更新MFC界面时间,频率1s. 文件——新建项目——MFC应用程序,下一步,选择基于对话框,其他默认,完成. 双击窗体(或者鼠标右键)进入类向导,自动创建Ontimer()函数 void CMFCApplication8Dlg::OnTimer(UINT_PTR nIDEvent) { // TODO: 在此添加消息处理程序代码和/或调用默认值 CTime time = CTime::GetCurrentTime();//获取当前时间 CString str; str.Format(_…
CSDN的博客编辑器实在是难用……转战博客园 直接把CSDN发的搬过来了 ————————————————————————————我是分割线———————————————————————————— 第一次发博客好紧张啊,这里的大神都牛逼哄哄的只有我是装逼的我会不会被打啊 先上妮可镇帖 我最近在写一个MFC项目(基于对话框)时发现只要使用了CFileDialog,窗体上的Menu就会变成灰色,但是可以点击,如下图所示. 忘了说,我的环境是Win8.1 + VS2013,弹出CFileDialog的…
单文档支持文档视图架构.数据的保存--(读取--改动)文档类功能--显示(视图类功能),比較方便. 基于对话框,主窗体是对话框类型.能够方便的使用控件,所见即所得的编程,比較方便. 单文档类似"记事本"这种应用程序.是文件处理软件的开发基础.仅仅是每一个应用程序仅处理一个文档(与多文档相比較). 基于对话框类似"计算器"这种应用程序.没有须要处理的文档,通常是工具软件的开发基础. 基于对话框(3个类): CAboutDlg 程序名App 程序名Dlg 单文档(5个类…
文件——新建——项目——MFC应用程序 运行即可. [菜单栏单击事件] 视图——其他窗口——资源视图,双击Menu中的IDR_MAINFRAM,打开菜单栏.在主菜单栏输入“显示你好”. “显示你好”处,鼠标右键——属性,为了直观,把ID修改成下图所示. “显示你好”处,鼠标右键——添加事件处理程序. void CMainFrame::OnShowhello() { // TODO: 在此添加命令处理程序代码 AfxMessageBox(_T("你好!"));//_T是一个宏,作用是让你…
StopWatch 时间计数器简介: Stopwatch 可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间.一般用来测量代码执行所用的时间或者计算性能数据,在优化代码性能上可以使用Stopwatch来测量时间. 在多处理器计算机上,线程在哪个处理器上运行并不重要. 但是,由于 BIOS 中的 bug 或硬件抽象层 (HAL) ,你可以在不同的处理器上获取不同的计时结果. 若要为线程指定处理器关联,请使用 ProcessThread.ProcessorAffinity 方法. 属…
首先,在 vs2008 环境下创建 MFC 运用程序 设置项目名称为 ComTest(这个地方随意命名,根据个人习惯),点击确定后,点击下一步 出现如下界面 选择"基于对话框"模式然后直接点击完成即可(其他选项按默认方式),点击完成后出现如下界面 解决资源管理器中自动给你生成好代码目录(可点击菜单栏"视图"选项打开解决方案资源管理器),如下图所示 我们再次回到对话框编辑窗口,删除自动生产的控件(静态文本控件.确定和取消按钮控件),并在工具箱里添加两个button按钮…
MFC应用程序中处理消息的顺序 1.AfxWndProc()      该函数负责接收消息,找到消息所属的CWnd对象,然后调用AfxCallWndProc 2.AfxCallWndProc()  该函数负责保存消息(保存的内容主要是消息标识符和消息参数)供应用程序以后使用,然后调用WindowProc()函数 3.WindowProc()      该函数负责发送消息到OnWndMsg()函数,如果未被处理,则调用DefWindowProc()函数 4.OnWndMsg()        该函…
MFC:微软基础类(Microsoft Foundation Classes),同VCL类似,是一种应用程序框架,随微软Visual C++ 开发工具发布.作为Application Framework,MFC的使用只能提高某些情况下的开发效率,只起到辅助作用,而不能替代整个Win32 程序设计. 本次主要以Windows下Visual Studio 2019环境下如何搭建MFC应用开发环境,创建MFC项目以及实例程序来对C++ MFC应用程序开发来做一个归纳整理. 一.搭建开发环境 由于Vis…
原文转自 http://blog.csdn.net/yongh701/article/details/43793151 所谓的向导功能,在win32的程序中常常见于安装程序或者程序内的设置向导,该向导能够指引用户去完成一些事情,不用用户一次性面对一大堆复杂的设置内容.同时,最主要的功能是现实单一对话框内的分页技术,如果一次性在对话框呈现全部内容,那么这个对话框要做到很大,比较不友好.因此,如何在一个对话框中实现分页,同样是需要了解的内容. 一.基本目标 下面就实现一个简单的例子来说明这个问题,如…
方法1:亲测 成功  转载自https://social.msdn.microsoft.com/Forums/vstudio/zh-CN/48338f6b-e5d9-4c0c-8b17-05ca3ef1f761/vs2010dialog 你可以创建菜单作为一种资源,然后将它附加到对话框.打开dialog“属性”对话框,你可以看到一个Menu属性,最终我们将在这里指定一个我们自己创建的菜单ID. 具体步骤如下: •在资源视图中右键单击工程名,插入一个新的菜单.这个菜单会有一个ID(例如:IDR_M…
用过不少编程语言,可是刚开始学的时候最容易忘记一些简单的流程或者生疏了.那么这里就说说VS 2008 创建MFC程序对话框的步骤.我主要是android开发方面的.平时使用jni调用不少c++代码.所以就用到了调试c++代码的MFC啦. 1.文件--新建项目 2.选择对话框,然后就可以拖控件进行监听 3.起始对话框的类名 4.项目新建后,依次双击箭头指向就可看到可视化界面. 5.可视化对话框 这里就可以增加button,输入框以及监听事件,还有你的逻辑代码进行测试.…
创建基于对话框的Windows应用程序(四)—— Edit Control.Combo Box的应用.Unicode转ANSI.Open File Dialog.文件读取.可变参数.自动滚动 之前的介绍中,我们用到了Button.Static Text.Checkbox这三个控件.这一节中我们将学习使用Edit Control(编辑框).Combo Box控件,其中还包括Unicode转ANSI的方法.创建Open File Dialog. 读取文件.可变参数(这里用于生成日志).文本框自动滚动…
创建基于对话框的Windows应用程序(三) —— Checkbox的应用.窗体置顶.设置图标 上一节创建的窗体应用程序中,我们用到了Button和StaticText这两个控件.这一节中我们将学习使用Checkbox控件,并实现将窗体置顶和设置图标的功能. 17.首先切换到Reasource View(Ctrl+Shift+E),找到待修改的主窗体,并从Toolbox(Ctrl+Atl+X)中添加Checkbox控件如下: 18.右键选中的控件点击Propertise修改相关内容. 19.在被…
创建基于对话框的Windows应用程序(二) —— Button的应用.新建子窗体 可以发现上一节创建的窗体中,点击OK和Cancel两个按钮是没有任何反应的.现在我们来为他们添加退出对话框的功能. 6.首先定义命令消息响应函数(Dlg_OnCommand)如下: 其中IDOK和IDCANCEL分别是按钮OK和Cancel对应的标识符. 7.接下来定义宏替换如下: 8.再在回调函数(Dlg_Proc)中利用宏替换调用命令消息响应函数(Dlg_OnCommand)如下: 9.由于HANDLE_WM…
创建基于对话框的Windows应用程序(一) —— 新建窗体 1.新建一个Visual C++的Empty Project.  2.在Solution Explorer中右键Add New Item,添加 .cpp 文件,并提供Win32应用程序的入口点函数.  3.在Solution Explorer或 Resources View 中右键Add Resource,选择Dialog.并在修改相关内容. 4.切换到 .cpp文件中,创建回调函数(Dlg_Proc),并在入口点函数中调用Dialo…
MFC小程序截图: 一.在MFC中简单使用WebBrowser的ActiveX插件的方法: 见博文:  http://blog.csdn.net/supermanking/article/details/5866213 二.在对话框中创建视图(我这里创建的是一个滚动视图): 见博文: http://blog.csdn.net/clever101/article/details/4873994 http://blog.csdn.net/clever101/article/details/37790…
第一版本: http://ishare.iask.sina.com.cn/f/13836420.html?from=like 2. http://www.cnblogs.com/phinecos/archive/2008/04/14/1152696.html 3. http://www.emsky.net/bbs/archiver/?tid-28229.html 4. http://hi.baidu.com/wdmzslh/item/af389ef068779d28743c4c2e 5. htt…
新建一个基于对话框的MFC应用程序,假设命名为 Test:则该应用程序在刚创建的时候,有4个非常重要的文件和3个类: 4个非常重要的文件 1.Test.h 2.Test.cpp (应用程序类头文件) (应用程序类实现文件) 3.TestDlg.h 4.TestDlg.cpp (对话框类头文件) (对话框类实现文件) 3个类 类名 定义所在位置 类的实现代码所在位置 CTestApp Test.h Test.cpp CTestDlg TestDlg.h TestDlg.cpp  CAboutDlg…
一.MFC概念和作用 1.全称Microsoft Foundation Class Library,我们称为微软基础类库,封闭了绝大部分的win32 Api函数,C++语法中的数据结构,程序的运行流程 MFC就是一个库(动态库,静态库) MFC还是一个程序框架 2.为什么使用MFC 基于框架编程.提高工作效率,降低开发周期,节约开发成本. 二.几个重要的头文件 afx.h    -绝大部分类的声明头文件 afxwin.h -包括了afx.h和windows.h afxext.h -提供了扩展窗体…
前言一直利用Qt库做Ui设计,但针对于一些MFC项目,掌握一些必要的MFC开发技巧还是很有必要的.这篇博客里就将自己所学的一些MFC浅显知识记录一下,方便今后的学习.博客里只记录关键步骤. 一.新建MFC项目选择:基于对话框MFC的使用: 在共享DLL中使用MFC (程序运行需要dll) 在静态库中使用MFC (程序较大,运行时不需要dll) 设置MFC程序主框架样式和标题 高级功能 若是用不上“ActiveX控件”可以去掉勾选,若要涉及到网络编程就把“windows嵌套字”选上 完成 二.MF…
新建项目->MFC模板->MFC应用程序->应用程序类型:基于对话框->...OK 解决方案资源管理器->资源文件->xxx.rc->进入:资源视图->Dialog->IDD_DEMO_DIALOG->打开工具箱(在侧面找) //0.准备 删除默认控件:ctrl+A,fn+delete: 修改名称 属性 属性 captain 点击触发事件 属性 控件事件 BN_CLICKED :右键 添加事件处理程序:双击进入编辑 插入窗口 右键 添加类 插入工…
1.①创建mfc对话框窗口,对话框中所有控件都delete. ②绘制界面,按键都button,显示区域edit control,计算器名字用static text. ③所有控件ID改成语义化ID(可不改),如数字1 IDC_BUTTON_NUM1,改变caption值(显示). ④edit control属性中,外观中align text表示显示对齐位置(计算器靠右对齐,选择right),行为中的read only选择true(文本框只用来显示,故只读),最上方的static text标题属性a…
直接使用提供的代码框架进行修改,是最快得到效果的方法:但是这样的灵活性较差,而且真正的程序员从来都不会停滞在这一步:我们需要的是"将框架解析到最小化.理清楚每个构建之间的关系",只有这样才能灵活运用. 一.准备工作 1.高拍仪已经接通,如果需要的话,还要安装驱动: 2.vs2012编程环境,能够编写Csharp和OpenCV程序(具体不清楚可以回过头来看配置): 3.是DirectShow.net(http://directshownet.sourceforge.net/docs.ht…
1. 创建对话框类 (1)打开VC++6.0环境,点击:文件→新建: (2)在弹出的新建对话框中选择:工程→MFC AppWizard (exe)→输入工程名称(例如:功能调试)→工程保存路径名→确定(其他勾选项一律默认): (3)在弹出的MFC AppWizard- Step1对话框中选择:(你喜爱创建的应用程序类型?)点击基本对话框→(使用语言?)选择中文→点击下一个: (4)在弹出的MFC AppWizard- Step2 of 4对话框中选择:这里基本保持默认选择,比较有用的一项是输入标…
3. 绘图 3.1 对话框资源编辑 首先通过添加控件的方式来创建一个简单的绘图对话框如图所示,创建步骤为: 第一.在VC++6.0软件环境的灰色空白区域右击,选中Controls,然后会弹出一个控件对话框: 第二.点击需要的控件,鼠标箭头类型就会变成十字形,然后在主对话框里通过点击.拖拽绘制出需要的控件,这里也可以通过鼠标调整控件大小直到满意为止. 第三.在主对话框里右击打开属性对话框(一般情况下可以点击属性对话框左上角的形如大头针样式的小按钮来锁定属性对话框,解锁也是点击同样的按钮,只是按钮样…
近一段时间开始接触到MFC桌面开发程序,忙完了一段时间的项目开发之后,来整理整理Visaul Studio 2015开发MFC桌面程序的基本功能. 首先从创建软件工程项目开始,Visaul Studio 2015以上的版本安装Visaul Studio软件的是时候已经不默认安装MFC开发的组建了,需要用户自己手动安装,而2015之前的版本的Visaul Studio软件在安装的时候,都是默认安装了MFC的开发环境的. 第一步,打开Visaul Studio 2015软件,新创建一个工程,如下图所…
在WIndows 7操作系统上同时安装VS2012与VS2015并用VS2012创建MFC程序时弹出编译错误”fatal error C1083: 无法打开包括文件:“mprapidef.h”: No such file or directory”的解决办法: I installed vs2015 and vs2012, then the same problem occurs,however, I find a solution. open visual studio project sett…
如何创建浏览文件夹的对话框 如何创建浏览文件夹的对话框 CString CXXXXDlg::GetOpenfolderPath() { BROWSEINFO bi; ZeroMemory(&bi,sizeof(BROWSEINFO)); bi.ulFlags = 0x0040 | BIF_EDITBOX; LPMALLOC pMalloc; LPITEMIDLIST pidl = SHBrowseForFolder(&bi); CString strFolderPath = "&…
1.ActiveX的基本概念 ActiveX控件可以看作是一个极小的服务器应用程序,它不能独立运行,必须嵌入到某个容器程序中,与该容器一起运行.这个容器包括WEB网页,应用程序窗体等... ActiveX控件的后缀名是OCX或者DLL.一般是以OCX和动态库共存的形式打包成cab或者exe的文件放在服务器上,客户端下载后运行安装cab或exe解压成OCX和动态库共存的文件,然后注册ocx文件. ActiveX控件是基于com标准,使得软件部件在网络环境中进行交互的技术集.它与具体的编程语言无关.…
1.ActiveX的基本概念 ActiveX控件可以看作是一个极小的服务器应用程序,它不能独立运行,必须嵌入到某个容器程序中,与该容器一起运行.这个容器包括WEB网页,应用程序窗体等... ActiveX控件的后缀名是OCX或者DLL.一般是以OCX和动态库共存的形式打包成cab或者exe的文件放在服务器上,客户端下载后运行安装cab或exe解压成OCX和动态库共存的文件,然后注册ocx文件. ActiveX控件是基于com标准,使得软件部件在网络环境中进行交互的技术集.它与具体的编程语言无关.…