
MFC
文章平均质量分 92
TS_up
这个作者很懒,什么都没留下…
展开
-
MFC程序的启动过程与相关函数执行顺序
了解MFC程序的启动过程,对于初学者来讲,了学习MFC很有帮助;对于不常用VC的人来说,过一段时间就会忘记。还是来记下来,方便以后查阅。1、创建Application object对象theApp 程序一开始生产一个(且只有一个)Application object对象theApp,也即一个CWinApp对象,这个全局对象一产生,便执行其构造函数,因为并没有定义CMyWinApp构转载 2015-08-25 15:39:59 · 513 阅读 · 0 评论 -
CContextMenuManager上下文菜单管理器以及为菜单添加图标
转自:http://blog.youkuaiyun.com/akof1314/article/details/6075902在Visual Studio 2008SP1中,要弹出上下文关联菜单的话,只需要在应用程序初始化的时候调用CWinAppEx::InitContextMenuManager,然后使用CWinAppEx::GetContextMenuManager获得一个指向应用程序的转载 2016-11-20 22:34:27 · 992 阅读 · 0 评论 -
MFC注册表的使用
转自:http://blog.youkuaiyun.com/weiwenhp/article/details/9381717注册表简介有时程序中要存些设置信息,一个方法就是创建一些普通的txt或xml文件,然后保存进去就行了.另一办法就是保存到注册表里.注册表是由windows维护的一个小数据库.里面也会保存windows本身的很多配置信息.我们在命令行通过regedit可以手转载 2016-11-20 21:40:21 · 584 阅读 · 0 评论 -
VC中使用自定义资源
一、前言 在VC环境中除了我们所常用的Dialog、Menu和Bitmap等标准资源类型之外,它还支持自定义资源类型(Custom Resource),我们自定义资源类型能做些什么呢?呵呵,用处多多。1. 默认的皮肤压缩包或语言包。一些支持换肤的软件特别是一些媒体播放器常常有自定义的皮肤文件(你可以尝试将Media Player或千千静听等软件的Skins目录下的文原创 2016-04-08 12:15:27 · 2119 阅读 · 0 评论 -
GdiplusStartup函数
GdiplusStartup function3 out of 4 rated this helpful Rate this topicApplies to: desktop apps onlyThe GdiplusStartup function initializes Windows GDI+. Call GdiplusStartup before maki转载 2016-04-06 19:02:40 · 593 阅读 · 0 评论 -
编辑框CEdit
在VC 6中可以将一个编辑框的"Styles"中的"Multiline“和”Auto VScroll“勾上,然后编辑框里面的内容即可自动换行。 另外,CEdit 类的消息: #include // 头文件构造函数CEdit构造一个CEdit控件对象Create创建一个Windows编辑控件,并将其与CEdit对原创 2016-03-10 21:54:59 · 369 阅读 · 0 评论 -
SubclassWindow和SubclassDlgItem
问题缘起通常如果在对话框中将一个控件映射到一个变量,有三种方法:1. DDX的方法2. GetDlgItem的方法,例如CEdit pEdt = (CEdit *)GetDlgItem(IDC_EDIT1);3. SubclassWindow的方法(或者其扩展SubclassDlgItem),例如CEdit m_edit;转载 2016-01-27 15:55:06 · 400 阅读 · 0 评论 -
CWinThread的使用方法
CWinThread类成员数据成员 m_bAutoDelete 指定线程结束时是否要销毁对象 m_hThread 当前线程的句柄 m_nThreadID 当前线程的ID m_pMainWnd 保存指向应用程序的主窗口的指针 m_pActiveWnd 指向容器应用程序的主窗口,当一个OLE服务器被现场激活时 构造函数 CWinThread 构造一个转载 2015-12-26 17:32:29 · 1273 阅读 · 0 评论 -
多线程之三:MFC多线程及实例
MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等。但对于Win32的API编程而言,这两种线程是没有区别的,它们都转载 2015-12-18 16:32:15 · 303 阅读 · 0 评论 -
GetKeyState()和GetAsyncKeyState()的区别
使用::GetKeyState()返回一个short型的数,short型是16位有符号的数据类型,如果要查询的键被按下,返回值最高位被置1,则这个数表示负数,所以可以用0来判断。0x8000是16进制数,用2进制表示为1000 0000 0000 0000,&是按位与。同样,如果键被按下,返回值最高位为1,则1xxx xxxx xxxx xxxx & 1000 0000 0000 0000转载 2015-12-16 19:54:14 · 1873 阅读 · 0 评论 -
深入理解MFC子类化
子类化,通俗来讲就是用自己的窗口处理函数来处理特定消息,并将自己其他消息还给标准(默认)窗口处理函数。在SDK中,通过SetWindowLong来指定一个自定义窗口处理函数:SetWindowLong(hwnd, GWL_WNDPROC, (LONG)UserWndProc);。可是到了MFC中,大部分基础的东西都被封装起来了,那么,这是该怎么实现子类化呢? 先来看一个例子:转载 2015-12-16 16:03:15 · 2861 阅读 · 0 评论 -
实现多国语言的几个小知识
From:http://blog.youkuaiyun.com/mythma/article/details/487283获取模块(exe,dll)的执行目录 CString szCurPath(""), szModelPath; GetModuleFileName(NULL,szCurPath.GetBuffer(MAX_PATH),MAX_PATH); szCurPath.Relea转载 2015-11-26 15:36:40 · 306 阅读 · 0 评论 -
CContextMenuManager上下文菜单管理器以及为菜单添加图标
在Visual Studio 2008SP1中,要弹出上下文关联菜单的话,只需要在应用程序初始化的时候调用CWinAppEx::InitContextMenuManager,然后使用CWinAppEx::GetContextMenuManager获得一个指向应用程序的上下文管理器。如果工程是单文档/多文档的话,可能会自动关联一个右键菜单,可以在应用程序的实现文件看到类似如下代码://转载 2015-11-19 12:23:10 · 483 阅读 · 0 评论 -
GdiplusStartup函数
GdiplusStartup function3 out of 4 rated this helpful Rate this topicApplies to: desktop apps onlyThe GdiplusStartup function initializes Windows GDI+. Call GdiplusStartup before maki转载 2015-11-19 11:56:13 · 482 阅读 · 0 评论 -
pragma comment的使用 pragma预处理指令详解
#pragma comment( comment-type [,"commentstring"] )该宏放置一个注释到对象文件或者可执行文件。comment-type是一个预定义的标识符,指定注释的类型,应该是compiler,exestr,lib,linker之一。commentstring是一个提供为comment-type提供附加信息的字符串,Remarks:1、compiler:放转载 2015-11-26 17:26:20 · 358 阅读 · 0 评论 -
SetRegistryKey的作用
在利用mfc框架的时候,在App应用类的InitInstance()函数中,初始化时总有一个 SetRegistryKey("字符串XXX"),不知道究竟有何用处,这天仔细查看了一下,发现如果你使用注册表,则它为你提供了很便利的方法,当然如果不使用系统注册表,这句可以注释掉。以下是我在网上找到的一些资料:SetRegistryKey Causes application set转载 2015-11-19 12:14:17 · 303 阅读 · 0 评论 -
MFC 调试方法
主题内容AfxDebugBreakThe TRACE macroMemory leak detection in MFCTracking memory allocationsEnabling memory diagnosticsTaking memory snapshotsViewing转载 2015-09-01 14:39:02 · 928 阅读 · 0 评论 -
MFC对话框编程
摘自:https://www.cnblogs.com/lidabo/archive/2012/07/19/2598646.html一、创建对话框对象1.首先利用资源编辑器创建对话框资源,并针对该对话框资源定义一个对话框类:class CTestDlg : public CDialog2.创建话话框对象模态对话框的创建: 如:转载 2017-12-12 16:00:32 · 1194 阅读 · 0 评论