1.在窗口创建之前就应该修改窗口的样式

2.单文档应用程序会把文档名作为应用程序标题,应该去掉FWS_ADDTOTITLE属性,然后修改lpszName为标题

3.在窗口创建完成后,可以通过SetWindowLong改变窗口外观

4.GetWindowLong可以获取指定窗口信息

5.AfxGetInstanceHandle获取当前应用程序句柄

6.全局与CWnd中都有DefWindowProc函数,在类中使用要加作用域标识符

7.改变图标光标等可以通过在类中重新定义窗口类,并注册,把cs中的窗口类改为自定义类型

8.在MainFrame中改变不会影响到View类,要想都改变,需要把View类中一起改变

9.在窗口已经创建完成后,通过SetClassLong可以改变外观(GetClassLong)(框架类)

10.对于视类,需要对WM_CREATE进行消息响应

11.可以插入光标资源,图标资源等为应用程序改变外观

12.LoadIcon等函数第一个参数是应用程序实例句柄,可以通过AfxGetInstanceHandle获得

13.可以通过MAKEINTRESOURCE将ID号转为资源类型

14.CWinApp类有一个成员m_hInstance存储当前应用程序句柄,其派生类有一个全局变量theApp,可以通过声明theApp,然后直接使用m_hInstance

(在一个源文件中使用另一个源文件中定义的全局变量的方法)

15.AfxGetApp可以获取App对象的指针,通过指针使用内部成员

总结:获取应用程序实例句柄的三种方法:

*AfxGetInstanceHandle

*使用全局变量theApp,然后使用其内部成员(需声明)

*通过AfxGetApp获取App对象指针,通过指针使用成员

16.SetTimer设置一个时钟

17.在工具栏添加图标,然后在ClassWizard中添加消息响应函数,类似菜单项

18.向右拖动可以产生分隔符

19.创建工具栏方式:

20.一个ID号可以表示多种资源

21.工具栏EnableDocking设置可以停靠,窗口EnableDocking设置可以被停靠,缺一不可

22.DockControlBar停靠窗口

23.IsWindowVisible判断窗口是否可见

24.RecalcLayout 可以重排控件

25.ShowControlBar控制是否显示工具栏

26.SetCheck设置菜单选择

pCmdUI成员变量的使用

27.GetCurrentTime获取当前时间

通过Format格式化

28.SetPaneText设置状态栏文本

29.CommandToIndex通过字符串ID获取索引

30.SetPaneInfo设置状态栏属性

31.CProgressCtrl、Create创建进度条对象

32.SetRange设置进度条最小值,最大值

33.SetPos设置进度条位置

34.GetItemRect获取控件矩形

35.WM_USER以下是系统保留消息

发送消息,声明响应函数,关联响应函数(ON_MESSAGE(消息,函数))

36.SendMessage类似函数调用,PostMessage才是把消息投递到消息队列

37.在OnCreate返回之前,窗口并没有创建完成

 用菊子曰写博客,就是爽!

孙鑫MFC学习笔记9:状态栏与工具栏编程的更多相关文章

  1. 孙鑫MFC学习笔记13:文档

    1.CArchive类保存内存数据 2.CAchive类重载了>>与<<操作符,类似C++文件流 3.在OnNewDocument中通过SetTitle设置标题 4.字符串资源 ...

  2. 孙鑫MFC学习笔记12:文件读写

    1.指向常量的指针 2.指针常量 3.C语言对文件操作是在缓冲区,在缓冲区满或文件关闭时写入文件 读取相同 4.fflush刷新缓冲区,使缓冲区数据写入文件 5.fseek改变文件指针偏移量 6.st ...

  3. 孙鑫MFC学习笔记4:MFC画图

    1.画线方法 *1.捕获鼠标按下和弹起消息,获取两个点 *2.消息响应,画线 2.在CMainFrame类中的鼠标左键事件得不到响应的原因是CNameView覆盖了CMainFrame 3.注释宏 4 ...

  4. 孙鑫MFC学习笔记3:MFC程序运行过程

    1.MFC中WinMain函数的位置在APPMODUL.cpp APPMODUL.cpp中是_tWinMain,其实_tWinMain是一个宏#define _tWinMain WinMain 2.全 ...

  5. 孙鑫MFC学习笔记20:Hook编程

    1.HOOK拦截消息,设置越后的钩子优先级越高(钩子队列)2.SetWindowHookEx设置钩子    如果thread identifier为0或其他进程创建的线程,回调函数需要在动态链接库中声 ...

  6. 孙鑫MFC学习笔记19:动态链接库

    1.动态链接库 2.静态库和动态库 3.使用动态链接库的好处 4.动态链接库编译需要导出,使用需要导入 __declspec(dllexport),__declspec(dllimport) 5.动态 ...

  7. 孙鑫MFC学习笔记18:ActiveX

    18 1.容器和服务器程序 2.InvalidateControl重绘控件 3. 4.GetBackColor获取背景色 5.GetForeColor获取前景色 6.TranslateColor进行颜 ...

  8. 孙鑫MFC学习笔记17:进程间通信

    17 1.进程间通信4种方式 2.OpenClipboard打开剪贴板 3.EmptyClipboard清空剪贴板,并把所有权分配给打开剪贴板的窗口 4.SetClipboardData设置剪贴板数据 ...

  9. 孙鑫MFC学习笔记16:异步套接字

    16 1.事件对象 2.CreateEvent创建事件对象 3.SetEvent设置事件对象为通知状态 4.ResetEvent设置事件对象为非通知状态 5.InitializeCriticalSec ...

随机推荐

  1. 如何将GridViewEX升级到UWP(Universal Windows Platform)平台

    引言 上一篇文章中,我们主要讲解了如何在保证GridView控件的用户体验基础上,扩展GridView生成GridViewEx控件,增加动态添加新分组功能等,本文在上文的基础上,介绍如何在Window ...

  2. linux下目录操作

    1. 常用函数 #include <dirent.h> //open a directory //failed-NULL, other-return a DIR stream DIR *o ...

  3. DIY一个前端模板引擎.(一)

    前端MVVM 模式有点很多,完全摆脱了意大利面条式的代码.个人认为,所有MVVM 的框架基础就是一个高性能的JS模板引擎,它极大简化了 DOM 操作, 使页面渲染和业务逻辑彻底分离.为了理解模板引擎原 ...

  4. 缓存篇(Cache)~第二回 使用static静态成员实现服务器端缓存(导航面包屑)~续

    返回目录 在写完首篇cache文章后,有些朋友给我来信,希望可以使用JS的方法来实现这个导航功能,所以,才有了这篇文章,JS与C#不同,它虽然有引用类型,但它不具备一些引用类型的特性,如它的方法参数为 ...

  5. 基础才是重中之重~stream和byte[]的概念与转化

    回到目录 多看几篇 之所以写这篇文章完全是因为最近在研究FastDFS这个分布式的文件存储系统,当然这不是我第一次研究它了,就像我们去看一本书,我们不会只看一篇,而是一次次,一篇篇,每看一次会有新的收 ...

  6. display的理解

    display可把框内显示的内容改变(自我理解) none 此元素不会被显示. block 此元素将显示为块级元素,此元素前后会带有换行符. inline 默认.此元素会被显示为内联元素,元素前后没有 ...

  7. atitit.js浏览器环境下的全局异常捕获

    atitit.js浏览器环境下的全局异常捕获 window.onerror = function(errorMessage, scriptURI, lineNumber) { var s= JSON. ...

  8. 完美C++(第5版)(双色)

    完美C++(第5版)(双色) 薛正华 沈庚 韦远科 译 ISBN 978-7-121-23198-8 2014年6月出版 定价:148.00元 788页 16开 内容提要 <完美C++(第5版) ...

  9. css margin

    css中margin边界叠加问题: 看个同方向和异方向margin重叠现象: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transiti ...

  10. elastic-job

    github源码: https://github.com/dangdangdotcom/elastic-job maven中央仓: http://repo1.maven.org/maven2/com/ ...