现在位置: 首页 > MFC
2015-03-13 23:27 工业·编程 ⁄ 共 3356字 暂无评论
1979年,Trygve Reenskaug 这位牛人在Smalltalk-80系统上首次提出了MVC的概念,最初的时候叫做Model-View-Controller-Editor。 (我擦,1979年小僧还在佛祖那儿念经呢吧?) 1994年,Gof(Gang of Four)在《Design Patterns: Elements of Reusable Object-Oriented Software》一书中对MVC模式做了深入的解析。 Trygve Reenskaug最初提出MVC的目的是为了把数据(Model)和视图(View)分离开来,然后用控制器(Controller)作胶...
阅读全文

2014-10-05 16:55 工业·编程 ⁄ 共 4496字 暂无评论
MFC(微软基础类库)是专门为windows设计的一个用于开发图形用户界面的类库。MFC或多或少使用了面向对象的方法包装了Win32的API,正因如此,这些API有时是C++,有时是C,甚至是C和C++的混合体。 Qt这个C++的图形库由Trolltech在1994年左右开发。它可以运行在Windows,Mac OS X, Unix,还有像Sharp Zaurus这类嵌入式系统中。Qt是完全面向对象的。 Document/View model MFC编程需要使用Document/View模式以及模板(template),如果...
阅读全文
2014-03-26 06:17 工业·编程 ⁄ 共 10541字 暂无评论
文章目录 十年MFC经历认识的Microsoft技术 为什么用MFC?     有人都说windows界面向着metro风格发展,比如windows 8。随着人们对界面体验的要求越来越高,触摸时代的来临,微软是否会坚持现有的windows风格呢?据说将来的方向是移动互联网。     其实,MFC能做出那种metro风格效果,但是开发花费的时间和精力可能是其他方式的10倍。从wi...
阅读全文
2013-12-28 06:19 工业·编程 ⁄ 共 520字 暂无评论
最近做的程序越来越复杂,基于对话框模式创建的程序,有时用到多个对话框之间共享信息,百度了一下,有几种方法:       1.全局变量       2.消息传递       3.成员变量       4.构造函数 。。。。。。。。。 本人不喜欢用全局变量和消息,试着用成员变量,结果没有成功,不知道是小弟的方法不对还是什么,后来经过一番...
阅读全文
2013-12-15 13:45 工业·编程 ⁄ 共 395字 暂无评论
在MFC中除了前文的几种方法外,还有一种更方便的方法,就是通过ClassWizard利用类型库生成包装类,不过有个前提就是com组件的接口必须是派生自IDispatch。 相关阅读 ----在SDK中调用COM 具体方法:     按Ctrl+W调出类向导,按Add Class按钮弹出新菜单,选From a type libarary,然后定位到simpCOM.dll,接下来会出来该simpCOM中的所有接口,选择你想生成的接口包装类后,向导会自动生成相应的.cpp和.h文件。 &#...
阅读全文
    前一段时间写一个录音功能的DLL,找了N久,发现N多例子都非常麻烦!现在功能DLL做完了,总结一下贴出来大家看看.实现了录音,放音,打开,保存功能.非常简单,使用的是MSDN里面的MCIWnd来实现的.唉~废话少说了,还是看代码吧!     用VC建立一个Dialog,加入N个按钮.我的Dialog叫Wav3是测试用的.所以懒得弄名字了,下面也有一个些名字写的不怎么样. 全局的HWND g_hWndMCIWnd;    //因...
阅读全文
    使用VS2008,在项目属性中有一项MFC的使用,有三种设置: 1.使用标准Windows库 2.在共享DLL中使用MFC   3.在静态库中使用MFC 相关阅读 ----静态链接库LIB和动态链接库DLL的区别     第一种顾名思义。     第二种指的是打包时一些MFC的DLL的内容没有被包含在EXE文件中,所以EXE文件较小,但是运行时要求系统中要有相关的DLL文件。     第三种是将DLL中的...
阅读全文
2013-09-16 06:53 工业·编程 ⁄ 共 1952字 暂无评论
在发送 WM_QUIT消息时,要使用PostMessage发送,否则,窗口已经关闭,但任务管理器中进程还存在。可以通过 pDlg->PostMessage(WM_QUIT);或DWORD dwThreadId = GetWindowThreadProcessId(pDlg->GetSafeHwnd(),NULL); PostThreadMessage(dwThreadId,WM_QUIT,0,0); 结束进程。 WM_DESTROY消息有点儿不同。它是窗口正在关闭时发出的。 当得到WM_DESTROY消息的时候,窗口已经从视觉上被删除。 三个退出程序消息:WM_CLOS...
阅读全文
1、发送消息SendMessage、PostMessage PostMessage将消息放入消息队列后马上返回,而SendMessage直到窗口过程处理完消息后才返回 2、三个消息的区别 WM_CLOSE: 在系统菜单里选择了“关闭”或者点击了窗口右上角的“X”按钮,你的窗口过程就会收到WM_CLOSE。DefWindowProc对 WM_CLOSE的处理是调用DestroyWindow。当然,你可以不让DefWindowProc处理,而是自己处理,例如询问用户是否保存更改等。如果用户选择“取消”,你忽略此消息,...
阅读全文
一、COLORREF与RGB的相互转化 RGB(r,g,b)是一个宏 实际上它做得事是((COLORREF)(((BYTE)(r)|((WORD)((BYTE)(g))<<8))|(((DWORD)(BYTE)(b))<<16))) rgb(r,g,b)   =   一个整型值   =   r   +   g   *   256   + b*255*256    COLORREF 是 一 个 32-bit 整 型 数 值,它 代 表 了 一 种 颜 色。你 ...
阅读全文