
MFC
fysy0000
这个作者很懒,什么都没留下…
展开
-
MFC 序列化再理解
MFC 序列化再2深入理解转载 2011-07-21 18:52:08 · 989 阅读 · 0 评论 -
CMenu美化 和CButton
CButton可以利用CBitmapButton测试。CMenu 如果重绘效果更好 CMenu *pSubMenu=m_Menu.GetSubMenu(0);//获得子菜单(如果有)0表示索引,对应“文件”菜单 for(int i=0;i {原创 2011-08-08 14:06:59 · 2072 阅读 · 0 评论 -
关于双缓冲理解
双缓冲几个重要 注意点:1 不直接绘制在DC上,而是先绘制在内存DC然后利用BitBlt块传输效率高2 尽量限制背景重绘,背景的重绘导致两种颜色切换,会产生闪烁效果。 先擦出背景,在绘制图像做法步骤:1创建CompatibleDC2创建位图Compat原创 2011-08-09 01:06:10 · 735 阅读 · 0 评论 -
MFC 单文档创建过程
点击ON_FILE_NEW -----------> CWInApp::OnFileNew ({ m_pDocManager->OnFileNew) m_pDocManager.OnFileNew { 判断其m_tempList是不是空,然后判断是不是>1 然后用模板CDo原创 2011-08-07 11:11:36 · 3028 阅读 · 0 评论 -
OnCtrColor
Dialog绘制调用OnCtrColor先绘制Dialog背景,在依次绘制控件,也调用OnCtrColor对应Win32 WM_CTLCOLOR messaafx_msg HBRUSH OnCtlColor( CDC* pDC, CWnd* pWnd,原创 2011-08-06 23:59:19 · 966 阅读 · 0 评论 -
OnCreate 初始化未完全,解决方法
OnCreate是函数执行WM_CREATE消息,这个时候窗体创建完毕了,但是相关的状态栏,工具栏等不一定创建成功。我们可以在OnCreate中发送一个消息。这个时候不能用SendMessage这个会执行发送消息完后才返回。PostMessage放置到消息队列中,自己原创 2011-08-06 22:25:59 · 983 阅读 · 0 评论 -
CDialog 模态对话框 非模态
模态对话框可以用局部变量,DoModal 点击OK CANCLE 窗口被销毁 EndDialog( int nRetCode);非模态局部变量是不可以的 Create Show 点击OK CANCLE窗口被隐藏了,没有销毁 OnOK 重载OnOk不要调用基原创 2011-08-06 13:39:08 · 1180 阅读 · 0 评论 -
CStatic
静态文本,label picxbox静态控件默认不可以接收消息,其ID是一样的,不能增加消息,想增加消息,改变IDC,并且改变Notify属性后才可以接受消息,在创建时候传参SS_NOTIFY,或者向导中选择GetDlgItem 返回CWnd指针,atoi itoa原创 2011-08-06 15:05:31 · 575 阅读 · 0 评论 -
WM_SZIE WM_PAINT
如果不设置窗体CS_VREDRAW CS_HREADRW 那么两个消息没有关系,窗体变化不会重新绘制。如果有那么Onsize onerasebackground onpaint 一般可以在OnEraseBackgroud重回之背景还一再在OnPant但是OnPaint原创 2011-08-08 11:36:36 · 711 阅读 · 0 评论 -
MFC 改变窗口外观
1 在PreCreateWindow中改变,窗体模式,标题,状态,透明等。 标题注意下,标题默认是VIEW的2 在OnCreate后用GetWindowLong(hWnd,GWL_STYLE,WS_XXX);3如果要改变光标图标等,可以在即在PreCreateWindo原创 2011-08-06 21:32:09 · 1316 阅读 · 0 评论 -
更改消息路由Command
MFC中Command消息包含菜单工具栏等命令消息和控件的Notify消息,其消息流动比较复杂。大体概括如下,系统维护 窗口句柄和对象指针的表,VIEW或者Frame类产生消息找到相应的指针调用 OnCommand 其中改写了OnCommand函数的有CWnd CFra原创 2011-08-06 10:35:25 · 552 阅读 · 0 评论 -
CEdit创建
m_objCpointEditPostion.top = 0;m_objCpointEditPostion.left = 0;m_objCpointEditPostion.right = 200;m_objCpointEditPostion.bottom = 100;原创 2011-08-06 10:57:18 · 531 阅读 · 0 评论 -
MFC 绘制标题栏 按钮
#include#include"resource.h"#ifdef _UNICODE#undef _UNICODE#endif // _UNICODE#define WM_USER_CLOSE WM_USER + 100//=====================原创 2011-07-31 00:35:30 · 6026 阅读 · 2 评论 -
MFC OnPaint
重载了该函数,那么绘图程序便有程序员自己处理了,那么系统不在调用DefWindowPro那么你必须显示调用, beginPaint endPaint 在MFC中你可以调用CPaintDC原创 2011-07-30 18:09:30 · 1850 阅读 · 0 评论 -
WM_CREATE MFC OnCreate
OnCreate()不产生窗口,只是在窗口显示前设置窗口的属性如风格、位置等,Create()负责注册并产生窗口 Create()不是对应于消息WM_CREATE的,OnCreate()才是。Create()只用于产生窗口,像动态创建控件中的Create()一样。原创 2011-07-31 01:04:53 · 2698 阅读 · 0 评论 -
MFC RTTI 仿真
//mfx.h 主要是RTTI相关宏的定义#includestruct CRuntimeClass{ LPCSTR m_pszClassName; DWORD m_dwObjectSize; CRuntimeClass* m_pBase原创 2011-07-18 21:09:57 · 538 阅读 · 0 评论 -
MFC 执行过程
//AfxWinMain()函数在WINMAIN.CPP文件中,它主要调用以下函数AfxWinInit();pApp->InitApplication(); //pThread->InitInstance(); //调用子类中的InitInstance()CTestA原创 2011-07-15 23:42:59 · 657 阅读 · 0 评论 -
深入解析MFC -- 句柄与对象的关系
深入解析MFC -- 句柄与对象的关系在Windows体系中,很多对象都是以句柄的形式展示给开发人员的。比如窗口句柄(HWND),绘图设备(HDC)等等。然后大部分的API函数则围绕 这些句柄做文章。比如ShowWindow,SetWindowText,TextOut等等。这些A转载 2011-07-26 11:40:13 · 907 阅读 · 0 评论 -
GDI GDI+ 切换
当然希望可以使用GDI+来完全代替GDI,再不济也只需要从GDI对象转到GDI+对象。但是就是有那么些工程,又要新技术新特性、又希望快速开发、又不肯丢弃旧版本的已有的功能。没办法,只能缝缝补补,咔哐碙啌...一、CDC到Graphics只要这样:Graphic原创 2011-08-09 02:24:32 · 939 阅读 · 0 评论