MFC
蜗牛的信仰
这个作者很懒,什么都没留下…
展开
-
创建UI线程并正确传递参数
UI 线程是由CWinThread派生类控制的,这个派生类和CWinApp极为类似,实际上CWinApp也是一个UI线程,他是应用程序的主线程,一般我们所说的UI线程,是指除主线程之外的界面线程。 具体创建方法:1.创建一个CWinThread的派生类CUiTread22.在CUiTread2类的InitInstance函数中建立自己的界面,注意必须设置CWinThread类的m_pMainWnd原创 2009-12-14 09:15:00 · 3093 阅读 · 0 评论 -
MFC 多线程总结
(一) MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外 的用户输入,响应用户及系统所产生的事件和转载 2009-12-17 15:21:00 · 917 阅读 · 0 评论 -
MFC 多线程总结
(一) MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外 的用户输入,响应用户及系统所产生的事件和转载 2009-12-17 16:56:00 · 738 阅读 · 0 评论 -
判断多Frame网页是否真正加载完毕(CHtmlView)
MFC 界面控件自动大小伸缩 C++ Builder 开发WINDOWS界面非常省时,不仅仅是提供的界面控件元素多,而且界面元素控件有一项自动伸缩和固定控件边界在某个位置上的属性。MFC提供的界面元素控件时没有该属性的,如果需要,必须得手动加上一堆代码才可以实现,非常繁琐。对入门的开发人员来说这一点很头疼,其实本人也很头疼这一点,所以花了点小时间封装了一些代码来解决该问题,主要还是节省开发转载 2010-01-05 10:22:00 · 1271 阅读 · 0 评论 -
mfc UTF8 To GB2312
CString UTF8ToGB2312(char *str){ CString result; WCHAR *strSrc = NULL; TCHAR *szRes = NULL; int i; // UTF8转换成Unicode i = MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL,原创 2012-04-27 11:06:08 · 2916 阅读 · 0 评论 -
Windows 核心编程学习笔记 一
1. 获取当前线程的上一错误代码a:) 代码 GetLastError()和 FormatMessage() LPVOID lpMsgBuffer; DWORD dwRet=FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, ::GetLas原创 2013-06-05 10:52:49 · 1907 阅读 · 0 评论 -
ocx 支持文件拖拽
在activex control test container上测试可以响应wm_dropfiles,但拖放文件到web页面的activex控件上时,弹出下载文件对话框,activex控件没有响应wm_dropfiles。怎么样让我的控件获得wm_dropfiles消息,响应拖放文件操作?1.在ctrl类中加变量COleDropTarget oleDropTarget;原创 2013-06-26 09:52:00 · 1848 阅读 · 0 评论 -
OCX中通过HOOK来实现PreTranslateMessage
1.首先在OCX的cpp文件中声明一个全局变量:static HHOOK hHook=NULL;2.定义hHook处理函数:LRESULT CALLBACK GetMessageProc(int nCode, WPARAM wParam, LPARAM lParam){ AFX_MANAGE_STATE(AfxGetStaticModuleState( ));//模块切换时转载 2013-07-01 16:51:13 · 2367 阅读 · 1 评论