MFC大杂烩
文章平均质量分 80
JidanIt
这个作者很懒,什么都没留下…
展开
-
MFC中获取各种类指针
1、获取应用程序指针 CMyApp* pApp=(CMyApp*)AfxGetApp();2、获取主框架指针 CWinApp 中的公有成员变量 m_pMainWnd 就是主框架的指针 CMainFrame* pMainFrame = (CMainFrame*)(AfxGetApp()->m_pMainWnd); 或者 CMainFrame* pMainFrame = (CM原创 2008-07-15 17:23:00 · 1445 阅读 · 0 评论 -
MFC教程-13
MFC工具条和状态栏 Windows控制窗口 Windows (Windows95或者以上版本) 提供了系列通用控制窗口,其中包括工具条(ToolBar)、状态栏(StatusBar)、工具条提示窗口(ToolTip)。Windows在一个DLL加载时注册个控制窗口的“窗口类”。例如,工具条的“窗口类”是 “ToolbarWindow32”,状态栏的“窗口类”是“ms原创 2008-07-22 11:26:00 · 1395 阅读 · 0 评论 -
MFC的模块状态:从AfxGetApp()和AFX_MANAGE_STATE()看MFC的模块状态
Introduction当我们在用MFC编程的时候,我们经常用到AfxGetApp()来获得当前的CWinApp的Instance。看看MFC的源代码中AfxGetApp()的实现,你会发现AfxGetApp()的实现并不像一般情况下面那样直接:_AFXWIN_INLINE CWinApp* AFXAPI AfxGetApp() { return afxCurrent原创 2008-07-21 13:18:00 · 817 阅读 · 0 评论 -
MFC教程-对象的创建
MFC对象的创建 前面几章介绍了MFC的核心概念和思想,即介绍了MFC对Windows对象的封装方法和特点;MFC对象的动态创建、序列化;MFC消息映射机制。现在,考查MFC的应用程序结构体系,即以文档-视为核心的编程模式。学习本章,应该弄清楚以下问题:MFC中诸多MFC对象的关系:应用程序对象,文档对象,边框窗口对象,文档边框窗口对象,视对象,文档模板对象等。MFC对象的创原创 2008-07-22 11:36:00 · 1086 阅读 · 0 评论 -
OnUpdateCmdUI 与 OnCommand 的区别
一个是WM_INITMENUPOPUP或wm_initmenu产生后由mfc框架调用以便用来控制菜单项的外观的... 一个是点击菜单后产生的..命令更新机制MFC框架结构中,可以用ON_UPDATE_COMMAND_UI( id, memberFxn )宏指定菜单或工具条按钮等对应的状态设置函数在memberFxn中通过传入的CCmdUI对象指针就可以设置菜单项,工具钮的使用、禁用、原创 2008-07-22 11:52:00 · 3496 阅读 · 1 评论 -
MFC教程-12
对话框和对话框类CDialog 对话框经常被使用,因为对话框可以从模板创建,而对话框模板是可以使用资源编辑器方便地进行编辑的。模式和无模式对话框 对话框分两种类型,模式对话框和无模式对话框。模式对话框 一个模式对话框是一个有系统菜单、标题栏、边线等的弹出式窗口。在创建对话框时指定WS_POPUP, WS_SYSMENU, WS_CAPTION和 DS原创 2008-07-22 11:29:00 · 1082 阅读 · 0 评论 -
AFX_MANAGE_STATE(AfxGetStaticModuleState());问题
写一个MFC规则动态链接库(regularDll.dll),在这个里面写一个函数 extern "C " _declspec(dllexport) void ShowDlg(void) { CMyDlg dlg; dlg.DoModal(); AfxMessageBox( "hello "); } 建立一个基于对话框的应用程序CallDll,添加一个按钮,在OnBtn1(){}里调用原创 2008-07-21 11:13:00 · 1381 阅读 · 0 评论 -
(转了多次不知道几转了)在DLL中使用资源(CDialog)
在DLL中使用资源 现在最常看见的关于DLL的问题就是如何在DLL中使用对话框,这是一个很普遍的关于如何在DLL中使用资源的问题。这里我们从Win32 DLL和MFC DLL两个方面来分析并解决这个问题。 1.Win32 DLL 在Win32 DLL中使用对话框很简单,你只需要在你的DLL中添加对话框资源,而且可以在对话框上面设置你所需要的控件。然后使用DialogB原创 2008-07-21 11:07:00 · 870 阅读 · 0 评论 -
MFC教程-3
CObject类 CObject 是大多数MFC类的根类或基类。CObject类有很多有用的特性:对运行时类信息的支持,对动态创建的支持,对串行化的支持,对象诊断输出,等等。 MFC从CObject派生出许多类,具备其中的一个或者多个特性。程序员也可以从CObject类派生出自己的类,利用CObject类的这些特性。本章将讨论MFC如何设计CObject类的这些特性。首先,考察C原创 2008-07-22 11:37:00 · 1713 阅读 · 0 评论 -
MFC教程-2
2 WinMain入口函数WinMain流程 现在讨论MFC应用程序如何启动。WinMain 函数是MFC提供的应用程序入口。进入WinMain前,全局应用程序对象已经生成。WinMain流程如图5-3所示。图中,灰色框是对被调用的虚拟函数的注释,程序员可以或必须覆盖它以实现MFC要求的或用户希望的功能;大括号所包含的图示是相应函数流程的细化,有应用程序对象App的初始化、Ru原创 2008-07-22 11:35:00 · 1861 阅读 · 0 评论 -
MFC教程-7
MFC的DLL 一般的,在介绍Windows编程的书中讲述DLL的有关知识较多,而介绍MFC的书则比较少地提到。即使使用MFC来编写动态链接库,对于初步接触DLL 的程序员来说,了解DLL的背景知识是必要的。另外,MFC提供了新的手段来帮助编写DLL程序。所以,本节先简洁的介绍有关概念。DLL的背景知识 静态链接和动态链接 当前链接的目标代码(.obj)如原创 2008-07-22 11:34:00 · 729 阅读 · 0 评论 -
MFC教程-11
MFC下的文件类 文件操作的方法 使用Visual C++编程,有如下方法进行文件操作:(1)使用标准C运行库函数,包括fopen、fclose、fseek等。(2)使用Win16下的文件和目录操作函数,如lopen、lclose、lseek等。不过,在Win32下,这些函数主要是为了和Win16向后兼容。(3)使用Win32下的文件和目录操作函数,如Cre原创 2008-07-22 11:31:00 · 831 阅读 · 0 评论 -
VC进阶----(3)菜单操作代码
//标记菜单 //GetMenu()->GetSubMenu(0)->CheckMenuItem(2,MF_BYPOSITION |MF_CHECKED);//索引方式 //GetMenu()获得菜单CMenu对象指针, GetMenu()->GetSubMenu(0)->CheckMenuItem(ID_FILE_SAVE,MF_BYCOMMAND |MF_CHECKED);//ID方式原创 2008-07-17 09:43:00 · 1017 阅读 · 0 评论 -
windows编程总结
(一)Dialog篇: CDialog::DoModal();//显示对话框 UpdateData(TRUE);//将数据从控件传递到相应的成员变量 UpdateData(FALSE);//将数据从成员变量传递到相应控件 显示消息框: int AfxMessageBox(LPCTSTR lpszText,UINT nType=MV_OK,UINT原创 2008-07-16 17:36:00 · 239 阅读 · 0 评论 -
关于0xC0000005
0xC0000005: Access Violation错误调试- - Oh my god,耗费我了几个小时的时间,请教了Zz和Tina后,终于搞定了一部分了。 归根结底是内存分配的问题,如果不分配内存,就会导致访问冲突。 开始是个类的构造没有写,,,(写在另一个类的一个函数里面了,但是没有调用),后来是一些结构没有初始化。调用osip库的init系列初始化后,错误减少了很多。 现在还有很多错误原创 2008-07-16 13:18:00 · 36939 阅读 · 9 评论 -
MFC教程-9
MFC的状态 MFC定义了多种状态信息,这里要介绍的是模块状态、进程状态、线程状态。这些状态可以组合在一起,例如MFC句柄映射就是模块和线程局部有效的,属于模块-线程状态的一部分。模块状态 这里模块的含义是:一个可执行的程序或者一个使用MFC DLL的DLL,比如一个OLE控件就是一个模块。一个应用程序的每一个模块都有一个状态,模块状态包括这样一些信息:用来加载资原创 2008-07-22 11:32:00 · 893 阅读 · 0 评论