MFC
liulang19880612
这个作者很懒,什么都没留下…
展开
-
Dialog背景自绘 大小改变 原来图像残留
最近为了美化程序,需要在CDialog的派生类中自绘一些东西,其中最简单的自绘是在对话框客户区边沿画一些线条(在OnPaint中绘图),但是这种最简单的自绘也会产生问题,我的对话框是能改变大小的,当改变对话框大小的时候,总会残留改变大小之前的绘图,用Spy++查看对话框的Class Style,发现对话框在默认状态下的Class Style是CS_SAVEBITS和CS_DBLCLKS,并原创 2014-08-29 13:57:01 · 907 阅读 · 0 评论 -
defwindowproc与pretranslatemessage有什么区别
MFC 中PreTranslateMessage是GetMessage(...)函数的下一级操作,即GetMessage(...)从消息队列中获取消息 后,交由PreTranslateMessage()处理,若其返回FALSE则再交给TranslateMessage和 DispatchMessage处理(进入WindowProc); 如果用SendMessage, 则消息直接交到Wind转载 2015-11-12 13:43:01 · 1308 阅读 · 0 评论 -
彻底理解字符串
引言毫无疑问,我们都看到过像 TCHAR, std::string, BSTR 等各种各样的字符串类型,还有那些以 _tcs 开头的奇怪的宏。你也许正在盯着显示器发愁。本指引将总结引进各种字符类型的目的,展示一些简单的用法,并告诉您在必要时,如何实现各种字符串类型之间的转换。在第一部分,我们将介绍3种字符编码类型。了解各种编码模式的工作方式是很重要的事情。即使你已经知道一个字符串是转载 2015-01-24 21:08:53 · 1045 阅读 · 1 评论 -
CString
引言毫无疑问,我们都看到过像 TCHAR, std::string, BSTR 等各种各样的字符串类型,还有那些以 _tcs 开头的奇怪的宏。你也许正在盯着显示器发愁。本指引将总结引进各种字符类型的目的,展示一些简单的用法,并告诉您在必要时,如何实现各种字符串类型之间的转换。在第一部分,我们将介绍3种字符编码类型。了解各种编码模式的工作方式是很重要的事情。即使你已经知道一个字符串是一个字符转载 2015-01-24 21:17:38 · 671 阅读 · 0 评论 -
拼音匹配汉字首字母
// PinYin.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include using namespace std;#include #define MAX_LEVEL2 16char CFo原创 2014-12-02 11:27:57 · 1579 阅读 · 0 评论 -
WIN7 安装 VC6.0
今天写程序。可让人生气的是写的所有的程序没一个对的,不能连接运行。原来经过好多次的纠结后来才知道是win7不兼容导致的结果。多费解。好久才弄好。所以来发表个日志,希望有同样问题的孩子们可以试试。废话不说了,以下是正题:运行setup.exe安装程序,会弹出如下的的程序兼容性助手提示:此程序存在已知的兼容性问题,这个是Win7在警告用户VC++6.0存在兼容性问题:此程序存在已知的兼容性转载 2014-12-02 10:06:43 · 918 阅读 · 0 评论 -
ShowDropDown 鼠标消失的解决办法
今天终于体会到了什么叫小问题,大工作。一个小小的问题,耗费了我大半天的时间,其实解决起来只有两三句代码。 问题是这样的:应用CComboBox控件,在文本输入的时候可以进行文本过滤,并自动弹出下拉条,我在相应CBN_EDITCHANGE消息时进行处理,调用ShowDropDown函数就可以把下拉条弹出,结果发现鼠标的光标没有了。找了好多地方,采用了无数的查询方式,其实只需要加入转载 2014-11-04 14:52:01 · 1191 阅读 · 1 评论 -
wcstombs_s 中文问题
size_t i;Char AppDirectory[300];Wchar GetAppDirectory;errno_t einval= wcstombs_s(&i, AppDirectory, 300, GetAppDirectory, wcslen(GetAppDirectory));当GetAppDirectory中有中文字符时,转换会出现问题,如“as\桌转载 2014-10-16 11:23:55 · 3586 阅读 · 0 评论 -
窗口最大最下限制
最近用到窗口变化的一些东西,遇到几个相关的消息函数,简要分析,作为备忘。3个消息分别是:WM_SIZE、WM_SIZING、WM_GETMINMAXINFO;分别对应相应的处理函数:OnSize、OnSizing、OnGetMinMaxInfo。当窗口大小发生变化时,响应的顺序依次是:WM_GETMINMAXINFO-->WM_SIZING-->WM_SIZE。 O转载 2014-10-23 17:47:32 · 690 阅读 · 0 评论 -
RGB INT
int R =(rgb & 0xff0000 ) >> 16 ; int G= (rgb & 0xff00 ) >> 8 ; int B= (rgb & 0xff ); 转换成三个颜色分量 可现在我想把他逆回去 怎么弄 有人知道码?rgb= ((r*256)+g)*256+b转载 2014-10-23 09:53:36 · 688 阅读 · 1 评论 -
单客户端
HANDLE m_hMutex = ::CreateMutex(NULL,TRUE,m_pszName);if (GetLastError() == ERROR_ALREADY_EXISTS){ AfxMessageBox("您已经运行了本软件!");//弹出对话框确认不能运行第二个实例。 return FALSE;}让程序只运行一个实例的四种方法转载 2016-03-01 13:38:30 · 330 阅读 · 0 评论