现在位置: 首页 > 自动控制 > 文章
    无模式对话框即Modeless Dialog。之所以称为无模式,是因为无模式对话框允许用户同时操作其他窗口,这样窗口就可以作为工具窗口在程序主要窗口之外提供额外的功能,分离了各个对话框的功能。最常见的是Windows操作系统层次的窗口,例如资源管理器,我的电脑,Word等。本文介绍的是更下一层次的窗口,例如Word的属性设置对话框。     无模式对话框的创建通过“三步曲”完成:new -> CreateWi...
阅读全文
2012-07-10 06:26 工业·编程 ⁄ 共 8964字 暂无评论
  本文将针对一个单文档来描述MFC的文档/视图结构,他直接打开MFC的源代码进行分析,在分析过程中去掉了无关的部分。所以第一步就是要创建一个称为First得工程,文档类型是单文档,下文将围绕这个工程来讲的。 第一章 找回WinMain函数 首先在VC的安装路径中找到WINMAIN.CPP文件,AfxWinMain函数就是VC编译器的入口,去掉一些不重要的东西后得到如下得程序。 int AFXAPI AfxWinMain (HINSTANCE hInstance, HINSTANCE hPre...
阅读全文
2012-07-10 06:21 工业·编程 ⁄ 共 4324字 暂无评论
    树形控件TreeCtrl和下节要讲的列表控件 ListCtrl在系统中大量被使用,例如Windows资源管理器就是一个典型的例子。树形控件可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。     MFC中使用CTreeCtrl类来封装树形控件的各种操作。通过调用BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );...
阅读全文
2012-07-10 06:18 工业·编程 ⁄ 共 1818字 暂无评论
Q: 如何打开一个应用程序? ShellExecute(this->m_hWnd,"open","calc.exe","","", SW_SHOW ); 或 ShellExecute(this->m_hWnd,"open","notepad.exe", "c://MyLog.log","",SW_SHOW ); As you can see, I havent passed the full path of the programs. Q: 如何打开一个同系统程序相关连的文档? ShellExecute(this...
阅读全文
2012-07-09 21:48 工业·编程 ⁄ 共 1271字 暂无评论
1、管理方式不同:栈(stack)由编译器管理;堆(heap)由程序员管理。  2、空间大小不同:win32中,堆(heap)可达4G;VC中栈默认1M(可以修改)。  3、碎片问题:堆(heap)易产生;栈(stack)不会。  4、生长方向不同:堆(heap)生长方向是向上的,也就是向着内存增加的方向;栈(stack)相反。  5、分配方式不同:堆(heap)是动态的,没有静态的堆;栈(stack)有两种:动态和静态。  6、分配效率不同:栈(stack)...
阅读全文
2012-07-09 21:30 工业·编程 ⁄ 共 2768字 暂无评论
    当使用visual C++时,总是包含了头文件stdafx.h,却不知道是干什么用的.今天查找了相关资料,解释如下:     当我们使用AppWizard来自动生成某些项目的时候,系统会自动把所需要include的头文件在stdafx.h中先include一下,这样,我们只需要直接include这个stdafx.h文件即可.因为同一个项目中的不同源文件CPP都包含相同的include文件,这样,为每个.CPP文件都重复include这些文件就显得很傻了。  ...
阅读全文
2012-07-09 07:51 工业·编程 ⁄ 共 585字 暂无评论
    许多开发人员在利用Visual C++ 6.0开发程序时,经常会遇到程序在Debug版本中能够正常运行,但是在Release版本中就会出现问题的情况。为了在Release版本中发现和解决问题,需要在Release版本中调试程序,可是Release版本却不支持调试,这该怎么办呢?本实例就教给读者一个方法,使Release版本的程序可以进行调试。 (1)新建一个基于对话框的应用程序。 (2)在工程中选择Project→Settings命令,打开Project ...
阅读全文
2012-07-09 07:49 工业·编程 ⁄ 共 694字 暂无评论
使用快捷键对齐凌乱的代码,在编写程序时,有时只考虑了程序的算法,而忘记了代码的缩进格式。导致写出来的一段代码非常零乱。此时,可以按Alt+F8组合键来对齐代码。 在实例中经常使用快捷键将多行不规则的代码对齐,如果不使用该快捷键而是一行一行对齐是很浪费时间的,但使用快捷键对齐也是需要在一定编码规范内的。如果将代码全部写在一行内,则是无法完成对齐的。 (1)创建基于对话框的应用程序。 (2)在对话框中添加一个...
阅读全文
2012-07-09 07:48 工业·编程 ⁄ 共 839字 暂无评论
    在分析代码时,经常会遇到代码层次较多的情况。在代码行较多的情况下查找括号匹配是很消耗时间的,然而Visual C++中提供了查找括号匹配的方法。本实例将实现如何查找匹配括号。     将光标移动到需要检测的括号(如大括号{}、方括号[]、圆括号()和尖括号<>)前面,按Ctrl+]或Ctlr+E组合键。如果当前有匹配的括号,光标就会跳到匹配的括号处,否则光标不移动,并且机箱喇叭还会发出警...
阅读全文
2012-07-09 07:46 工业·编程 ⁄ 共 2493字 暂无评论
调试应用程序前所要做的必要设置: Project Settings->C/C++选项卡->General Category     * Debug info选择Program Database for Edit and Continue     * Optimizations选择Disable(Debug)     * 若不选择Generate browse info,可以节省编译时间 Project Settings->C/C++选项卡->Code Generation Category     * Use run-time lib...
阅读全文