随笔分类 -  MFC

摘要:1.先创建剪切的区域: HRGN rgnRect1 = CreateRectRgn(10,10,100,100); //x1, y1, x2, y2 2.设置窗口: SetWindowRgn((hWnd, rgnRect1 , bRedraw); //可见则bRedraw设为TRUE. 参考文章: 阅读全文
posted @ 2020-09-08 16:20 心媛意码 阅读(536) 评论(0) 推荐(0) 编辑
摘要:四种方式: 临界区 互斥量 信号量 事件 特点 操作原语 MFC下的操作 临界区 虽然临界区同步速度很快,但却只能用来同步本进程内的线程 EnterCriticalSection()(定义在WinBase.h中)LeaveCriticalSection() CCriticalSection类Lock 阅读全文
posted @ 2020-04-13 22:36 心媛意码 阅读(354) 评论(0) 推荐(0) 编辑
摘要:一.简单认识 MFC中将线程分为用户界面线程和工作线程,两者最大的区别是前者是和界面相关联的,而后者是进行后台的一些操作. 二.如何创建 MFC中的线程大多继承自CWinThread,而相关联的界面可以继承自CFrameWnd,也可以继承自对话框之类的(感觉只要是界面类,就可以吧). 它的创建过程大 阅读全文
posted @ 2020-04-02 14:50 心媛意码 阅读(1167) 评论(0) 推荐(0) 编辑
摘要:疑问: 1.为何MFC中采用CreateThread创建的子线程不可以和主线程同时运行呢? 发现: 1.可以定义多个子线程,使这多个子线程同时运行.比如让他们分别显示奇数和偶数. 阅读全文
posted @ 2020-03-31 15:41 心媛意码 阅读(158) 评论(0) 推荐(0) 编辑
摘要:最省事儿的,就是用CString中转一下: 1 2 3 4 int i = 10; CString str; str.Format(_T("%d"),i); LPCTSTR pStr = LPCTSTR(str); 另外,_stprintf也比较方便,并自动适应字符集,但需要申请内存并做静态转换(因 阅读全文
posted @ 2020-03-31 12:56 心媛意码 阅读(873) 评论(0) 推荐(0) 编辑
摘要:为了表明自己是windows系统的api,和自己定义的类函数进行区分. 我个人就习惯在Windows API函数前面加::以区分自定义函数或其他的类库函数。 比如Sleep(3); 也可以写成::Sleep(3); 阅读全文
posted @ 2020-03-27 11:15 心媛意码 阅读(244) 评论(0) 推荐(0) 编辑
摘要:_T("Hello")是一个宏,他的作用是让你的程序支持Unicode编码,因为Windows使用两种字符集ANSI和UNICODE,前者就是通常使用的单字节方式,但这种方式处理象中文这样的双字节字符不方便,容易出现半个汉字的情况。而后者是双字节方式,方便处理双字节字符。 如果你编译一个程序为ANS 阅读全文
posted @ 2020-03-08 21:35 心媛意码 阅读(1067) 评论(0) 推荐(0) 编辑
摘要:在BROWSEINFO中ulFlags中的,BIF_NEWDIALOGSTYLE表示开启文件对话框左下角的"新建文件夹"选项. 一个亲测有效的打开文件夹的例子: void CFileDialogDemoDlg::OnBnClickedButtonImport() { // TODO: Add you 阅读全文
posted @ 2020-03-08 19:14 心媛意码 阅读(754) 评论(0) 推荐(0) 编辑
摘要:上图中的对话框,它上面的元素会在ThreadTestQF.rc(下图)中显示出来。其中CAPTION是窗口左上方的标题。 而IDD = IDD_THREADTESTQF_DIALOG(根据赋值表达式的特性,可知enum的元素即是IDD_THREADTESTQF_DIALOG的值)表示对话框的数据,作 阅读全文
posted @ 2020-03-02 23:38 心媛意码 阅读(354) 评论(0) 推荐(0) 编辑
摘要:GetSafeHwnd,计算机语言函数。用于得到窗口指针句柄。 当我们想得到一个窗口对象(CWnd的派生对象)指针的句柄(HWND)时,最安全的方法是使用GetSafeHwnd()函数,通过下面的例子来看其理由: CWnd *pwnd = FindWindow(“ExploreWClass”,NUL 阅读全文
posted @ 2020-02-23 13:45 心媛意码 阅读(236) 评论(0) 推荐(0) 编辑
摘要:TranslateMessage(msg):是将虚拟键消息(比如键盘消息)转化为字符消息,如果没有虚拟键消息则不做处理. DispatchMessage(msg):msg中存的有窗口句柄,该函数会把消息派送到指定的窗口中.如果msg中没有窗口句柄,则不做处理. 参考文章:https://www.cn 阅读全文
posted @ 2020-02-23 11:48 心媛意码 阅读(479) 评论(0) 推荐(0) 编辑
摘要:第三个参数lpCmdLine是一个以空终止的字符串,指定传递给应用程序的命令行参数。例如:在D盘下有一个sunxin.txt文件,当我们用鼠标双击这个文件时将启动记事本程序(notepad.exe),此时系统会将D:\sunxin.txt作为命令行参数传递给记事本程序的WinMain函数,记事本程序 阅读全文
posted @ 2020-02-16 20:58 心媛意码 阅读(595) 评论(0) 推荐(0) 编辑
摘要:Win32应用程序的入口是WinMain(),而在MFC中却找不到WinMain函数,这个家伙究竟去了哪里了呢? 在MFC中最开始的操作往往是这样的: 先定义一个全局的theApp,比如CWinTestApp theApp;这一步会调用到CWinTestApp的构造函数; 而后实际上会调到WinMa 阅读全文
posted @ 2020-02-15 21:41 心媛意码 阅读(499) 评论(0) 推荐(0) 编辑
摘要:今天找一个界面的代码差点把我搞死,一开始在资源视图中一个一个控件点过来,没有找到对应的,后来又搜关键字alarm找了半天没找到。后来搜索实时报警关键字,逐个找,发现可疑的xml文件,最后在里面找到了realtimealarm.Dll文件。我擦竟然是调用的Dll文件,太骚了,没想到,不过之前也见过这种 阅读全文
posted @ 2020-02-13 23:57 心媛意码 阅读(227) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/weixin_38179212/article/details/102102528 阅读全文
posted @ 2020-02-05 11:51 心媛意码 阅读(1554) 评论(0) 推荐(0) 编辑
摘要:1.问题产生可能的原因: (1)类中可能存在不能够被复制的成员变量,比如文件流变量。举例:https://blog.csdn.net/innocent_sheld/article/details/88148856 (2)类中的拷贝构造函数声明成了private。 2.别的例子:https://bbs 阅读全文
posted @ 2020-02-03 19:10 心媛意码 阅读(2385) 评论(0) 推荐(0) 编辑
摘要:1.CString->std::string : 非unicode情形下: CString strMfc=“test“; std::string strStl; strStl=strMfc.GetBuffer(0); //获得CString字符串0位置的指针地址 unicode情形下:(VS项目属性 阅读全文
posted @ 2020-01-13 22:45 心媛意码 阅读(382) 评论(0) 推荐(0) 编辑
摘要:Error: Linking... nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) already defined in LIBCMTD.lib(n 阅读全文
posted @ 2020-01-13 22:35 心媛意码 阅读(327) 评论(0) 推荐(0) 编辑
摘要:1、首先,什么是消息,什么是事件,两者是一样的吗? 显然,两者是有区别的,举个简单的例子来说: 猎人在山中布置了一个陷阱,一头野猪掉进陷阱中了。 这里的“野猪掉进陷阱”就是一个事件,但是这个事件发生时,猎人并不一定知道(猎人不可能一直盯着某个陷阱); 如果猎人想要在猎物掉入陷阱中时马上知道,该这么做 阅读全文
posted @ 2020-01-05 21:27 心媛意码 阅读(443) 评论(0) 推荐(0) 编辑
摘要:View和Doc由Frame来进行管理 (这些知识遇到去,对比查一下,就会加快阅读代码的速度).而文档模板DocTemplate将三者联系起来了. 单文档时框架窗口用CFrameWnd, 多文档时用CMDIFrameWnd和CMDIChildWnd. MDI子窗口(CMDIFrameWnd)与典型的 阅读全文
posted @ 2019-12-29 15:55 心媛意码 阅读(453) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示