原创 【博客大赛】VC++学习笔记二

2014-6-30 00:41 1653 21 26 分类: 软件与OS 文集: C

 

1

 LRESULT long 的宏定义,指返回结果为long类型;

 

2

CALLBACK 为回调函数,一般用CALLBACK用声明窗口过程函数。系统通过窗口过程函数的地址(指针)来调用窗口过程函数,而不是函数名字,这点需要注意。

 

3

LPSTR : 'L'代表Long,'P'代表Pointer(指针)'STR'表示String,被定义成一个指向NULL结尾的32ANSI字符数组指针,跟LPWSTR是一样,不过后者是64位而已。

 

4

WNDCLASS: 在设计一个窗口,就必须指定窗口的特征。这个由WNDCLASS结构体来定义。这个结构体定义如下:

typedef struct _WNDCLASS {
    UINT       style;
                   //定义窗口的变化情况,如关闭缩小等,有近十种样式,常用的有

                                                 //CS_HREDRAW 宽度重新描绘,CS_VREDRAW 高度重新描绘,CS_NOCLOSE禁用关闭,CS_DBLCLKS 双击发送消息

    WNDPROC    lpfnWndProc; //前缀 lpfn 表示该成员是一个指向函数的长针,整个是指向窗口过程函数
    int        cbClExtra;          //类附加内存空间,一般初始化为0
    int        cbWndExtra;     //窗口附加内存空间
    HINSTANCE  hInstance; //指定包含窗口过程的程序的实例句柄
    HICON      hIcon;           //指定窗口类的图标句柄,必须是一个图标资源的句柄,若为NULL,则为默认图标
    HCURSOR    hCursor;   //指定窗口类的光标句柄,即设定鼠标形状。
    HBRUSH     hbrBackground; //handle to the class background brush,就是说指定窗口类的背景画刷句柄
    LPCTSTR    lpszMenuName; //一个以空终止的字符串,指定菜单资源的名字
    LPCTSTR    lpszClassName; //一个以空终止的字符串,指定窗口类的名字
} WNDCLASS, *PWNDCLASS;

 

5、举例如下:

//设计一个窗口类

WNDCLASS wndcls;

wndcls.cbClExtra = 0;

wndcls.cbWndExtra = 0;

wndcls.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);//黑色

wndcls.hCursor = LoadCursor(NULL,IDC_CROSS); //鼠标,默认是十字光标

wndcls.hIcon = LoadIcon(NULL,IDI_ERROR);  //手形图标

wndcls.hInstance = hInstance_1; //应用程序实例句柄为hInstance_1

wndcls.hpfnWndProc = WinSunProc;

wndcls.lpszClassName = "hello2013";

wndcls.lpszMenuName = NULL;

    wndcls.style = CS_HREDRAW| CS_VREDRAW;

RegisterClass(&wncls);

 

//篇后语——“飞言走笔”兄弟说我学得杂,呵呵,确实,学VC++不是我主攻硬件的方向,但是,我学它是利用晚上2个小时自己空闲的时间学的,白天要做其他重要的事情,因为我发现未来的工作中你多会一些,就会得到更宽的视野和发展空间。不是不专心,而是学无止境。硬件,还是我的最爱。

PARTNER CONTENT

文章评论5条评论)

登录后参与讨论

用户1823289 2015-1-19 21:49

加油,坚持!

345002072_353389109 2013-8-29 15:25

好吧,估计是晚上困了头晕了。我改过来。

用户403664 2013-8-29 15:09

你这个VC++学习笔记系列的分类怎么这么奇怪啊,三篇三个不同分类啊

345002072_353389109 2013-8-27 00:15

嗯嗯兄弟博学,哈哈。真心谢谢你的批评指正。还望以后多些批评,嘿嘿。

飞言走笔 2013-8-26 09:32

哈哈,其实我也学过一点儿VC,还用它编过一个串口测试的小工具,因为常用的串口调试工具都不给力。同意你说的,学无止境。其实我想表达的主要意思也是不要耽误“正事”的时间,呵呵。看来我多虑了,加油啊兄弟!
相关推荐阅读
啊左不是蜗牛 2015-01-28 09:21
【博客大赛】那样的人生,看不穿
         昨晚11点跟PM姐姐聊天,问她今晚要不要加班,她回:刚刚开发哥哥陪她出来打的。。。我以为我十点半从实验室回去已经够晚了。。我脸红了。        我问她为什么不早点回去...
啊左不是蜗牛 2015-01-13 19:41
【智能手机】三个观点说说国产手机未来
在此篇文章之前还有一个各大手机品牌的总结,请点击查看。 智能手机之论英雄出处      谈手机之前换个角度,类比一下PC领域。 PC领域毛利最高的时候,国产PC一直混在低端。随着时代发...
啊左不是蜗牛 2015-01-09 17:56
【智能手机】论英雄出处
我认为,如果你不知道对手的底细,那么你就很难战胜对手。知己知彼,百战百胜。所以,我简单地说说我对这几家手机品牌的看法。个人之见,欢迎讨论。   苹果: 1976年成立,在乔布斯这样的天...
啊左不是蜗牛 2014-11-19 13:48
【博客大赛】蜗牛求职记之华为篇
1、前言说明          蜗牛是电赛出身,本科做硬件嵌入式,画板子和写C程序,然后研究生阶段是转战android,但是由于项目涉及到硬件,导师项目众多,小伙伴少,于是我也负责部分st...
啊左不是蜗牛 2014-08-16 14:38
以另一种位图的思想来解决一道OJ题目
前言: 以前所接触到的位图的思想都是以1位的形式去存储某个数出现的次数是1次还是0次。常见的例子不外乎在《编程珠玑》上的开篇例子里,1千万个数的排序统计,用1.25M的内存空间就可以达到遍历一...
啊左不是蜗牛 2014-08-15 11:57
Android 笔记之 listview 性能优化
列表显示需要三个元素, (1)listview 视图,用来显示列表的View ; (2)适配器,用来把数据映射到listView上面的 (3)数据,具体将被映射的数据,包括字符串,图片...
EE直播间
更多
我要评论
5
21
关闭 站长推荐上一条 /3 下一条