上一页 1 ··· 6 7 8 9 10
摘要: subclassdlgitem该函数用来子类化一个控件.Subclass(子类化)是MFC中最常用的窗体技术之一。子类化完成两个工作:一是把窗体类对象attach到一个windows窗体实体中(即把一个窗体的hwnd赋给该类)。另外就是把该类对象的消息加入到消息路由中,使得该类可以捕获消息。SubclassDlgItem可以把对话框中已有的控件与某个窗口对象动态连接起来,该窗口对象将接管控件的消息处理,从而使控件具有新的特性.SubclassDlgItem函数的声明为BOOL SubclassDlgItem( UINT nID, CWnd* pParent );参数nID是控件的ID,pPar 阅读全文
posted @ 2013-06-20 13:12 FREE小宝 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 1 项目风格 1.1 项目取名 在VC之中,项目名为最后可执行文件名,所以项目名最好以最终的可执行文件名一致。 1.2 项目目录设置 为保证VC项目的备份方便、快捷,将所有该项目有关的文件全部放到统一的目录之下,为每个项目在该目录之下建立一个目录,项目之间的公共部分建立在public目录之下,项目所需要的基础库根据所需要的基础库数目分别建立不同的目录,项目相关的测试程序都统一放在TEST目录之下。下表显示了一个软件工程PSS系统的目录设置表: PSS系统有两个模块PSS_mod1和PSS_mod2,两个模块有一部分共用代码,在工程开发过程之中编写了三个测试程序PSS_TEST1、 PSS_TE 阅读全文
posted @ 2013-06-19 15:35 FREE小宝 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 全局变量一般这样定义:1。在一类的.cpp中定义 int myInt;然后再在要用到的地方的.cpp里extern int myInt;这样就可以用了。2。在stdafx.cpp中加入:int myInt;然后在stdafx.h中加入:extern int myInt这样定义以后无论在什么文件中都是可见的.3。比较规范的是,先定义一个Glbs.h,把所有的全局变量原始定义放进去。然后定义一个Externs.h,把你先前定义在Glbs.h中的变量都加上extern。注意:如果你在Glbs.h中设置了初值,那么在Externs.h中就不要加值了。然后调用时,第一次调用的#i nclude < 阅读全文
posted @ 2013-06-19 14:06 FREE小宝 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 全局变量一般这样定义:1。在一类的.cpp中定义 int myInt;然后再在要用到的地方的.cpp里extern int myInt;这样就可以用了。2。在stdafx.cpp中加入:int myInt;然后在stdafx.h中加入:extern int myInt这样定义以后无论在什么文件中都是可见的.3。比较规范的是,先定义一个Glbs.h,把所有的全局变量原始定义放进去。然后定义一个Externs.h,把你先前定义在Glbs.h中的变量都加上extern。注意:如果你在Glbs.h中设置了初值,那么在Externs.h中就不要加值了。然后调用时,第一次调用的#i nclude < 阅读全文
posted @ 2013-06-14 08:55 FREE小宝 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 在美国德锐大学,每个毕业生要接受的一门必修课程教育就是如何有效的学习。我很幸运遇到一位非常好的教授,Sugarman先生,我才有机会学到学习方法。尽管这个方法非常的基础,但它几乎能应用到任何事情上——不论它们的数量看起来是多么不可思议。面向对象编程语言的基础理论要点:学习基础理论要点,例如设计模式/范式,这样你就知道了在所有面向对象的编程语言中共同的知识,而不是只提高了一种语言水平。这是学习编程语言最有效的方法。编程语言的类型有很多种,例如函数式语言,面向对象语言,面向数据语言(更多)。通过把各种语言归纳分类,这600种语言大概可以分成50类。通过学习每种分类的基础理论要点,再学习分类中的不同 阅读全文
posted @ 2013-06-13 14:25 FREE小宝 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 介绍 本文提出了一组可以用来动态创建UI的类。该代码是集中于一个空闲池使用管理器的CWnd继承控件,该管理器可以帮助我们减少在特定UI场景中GDI资源的使用。为了在运行中演示这些类,我已经在此提供了一个MDI应用示例,它只是让你来打开XML文件。每个XML文件为单个MDI子窗体定义了布局和UI控件属性。尽管代码是用VC6写的,示例项目也可以被转换为VS 2003 和VS 2005项目。 UI场景 这里有两个普通的UI场景可能从空闲池的概念中受益。第一个例子是一个允许操作员来控制一些不同类型的远程设备的网络管理应用程序。每个设备有一组可以被几乎实时地读取或设置的参数。对于这种类型的应用程序... 阅读全文
posted @ 2013-06-10 13:59 FREE小宝 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 致命错误C1010:在寻找预编译指示头文件时,文件未预期结束。 就是没有找到预编译指示信息的头文件。 问题一般发生在:通过添加文件的方式,添加了一些cpp文件到一个MFC的程序,但该cpp文件并不是MFC,而是标准的C++。 解决方案1: 右键单击项目工程中的cpp文件,在菜单Project->Settings->C/C++->Precompile Header,设置为第一项:Not using precompile headers。 解决方案2:在.cpp文件开头添加包含文件stdafx.h。 #include"stdafx.h" 阅读全文
posted @ 2013-06-10 09:08 FREE小宝 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 当打开一个文件时,系统会自动找到打开它的程序。我一直对此有点兴趣,今天终于在自己的程序中也实现了。步骤是这样的,首先在注册表中注册我的程序和哪些文件格式(后缀名)关联,然后在程序中响应双击打开文件,因为启动程序的时候,MFC默认的是命令是FileNew。不够以前我的程序是改成FileNothing,因为我的是MDI程序。所以今天加了如果命令行传来文件路径就要把它打开。也即是cmdInfo.m_strFileName不为空。可是刚开始遇到一点小问题,因为路径会截断空格,比如"C:/Documents and Settings/桌面/draw1.sch"变成了"C:/ 阅读全文
posted @ 2013-06-09 15:33 FREE小宝 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 本文用一个详细的例子说明了TiXml的使用方法。如写、查找、插入、替换、加载、遍历等常见操作。首先简单介绍一下TinyXml,要看详细的在网上搜搜了^_^:TinyXML是一个简单小巧,可以很容易集成到其它程序中的C++ XML解析器。简单地说,TinyXML解析一个XML文档并由此生成一个可读可修改可保存的文档对象模型(DOM)。TinyXML使用文档对象模型(DOM),这意味着XML数据被解析成一个可被浏览和操作的C++对象,然后它可以被写到磁盘或者另一个输出流中。你也可以把C++对象构造成一个XML文档然后把它写到磁盘或者另一个输出流中。1、TinyXml源代码只有4个cpp文件和2个头 阅读全文
posted @ 2013-06-09 15:31 FREE小宝 阅读(224) 评论(0) 推荐(0) 编辑
摘要: <CString 参数传递约定> 当定义类接口时,必须确定为成员函数确定参数传递约定。现在有一些传递和返回 CString 对象的标准规则。如果遵循作为函数输入的字符串和作为函数输出的字符串中所述的规则,那么将得到正确而又有效的代码。<作为函数输入的字符串> 如果字符串是某个函数的输入,在大多数情况下,最好将该字符串函数参数声明为 LPCTSTR。在函数中根据需要使用构造函数和赋值运算符将其转换为 CString 对象。如果一个函数将要更改字符串的内容,那么将参数声明为非常数的 CString 引用 (CString&)。<作为函数输出的字符串> 通 阅读全文
posted @ 2013-06-09 13:22 FREE小宝 阅读(1495) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10