
windows基础应用程序编程
文章平均质量分 80
zhbmd
这个作者很懒,什么都没留下…
展开
-
windows基础应用程序编程(一):基本框架
从一开始编程时,大家面对着黑乎乎的控制台窗口,就开始幻想什么时候能进入windows下进行编程。能够编写出具有形形色色窗口的人往往都被我们认为是牛人。而从控制台窗口进入windows下进行编程,对于初学者来讲,绝对是一个很难跨越的坎。对此,自己也深有体会。因此,一直想写一些真正能够引导大家入门的windows基础应用程序编程的文章。也顺便把自己所知道的东西顺便好好的整理一番。以此与大家共勉。在原创 2014-08-08 23:22:49 · 3463 阅读 · 0 评论 -
windows基础应用程序编程(十二)文件操作
简介 使用过C或C++进行过文件操作的可能都清楚,文件操作主页就是那几个函数,打开文件、关闭文件、定位文件指针等等。在Windows操作系统中,文件操作保留了这些概念,但变得更为复杂。Windows下的采用文件句柄的方式来操作文件,当我们指定一个要操作的文件时,操作系统就需要为我们提供一个对应文件的文件句柄,我们要使用这个句柄来进行读写文件。操作系统也在内部为每个文件句柄维护一个读写指针原创 2014-12-12 21:58:11 · 826 阅读 · 0 评论 -
windows基础应用程序编程(十一)对话框
对话框是windows资源中一个非常重要的东西,对话框分为两类,模态的和非模态的,它们的区别是在于是否允许用户在不同的窗口间进行切换。对话框的工作原理 对话框和普通的窗口之间有很多相同的地方。但是对话框和普通窗口在实现上又有很多的不同,普通窗口的建立需要用RegisterClass注册一个窗口类,然后用CreateWindow建立窗口。建立对话框的时候并不使用CreateWindow原创 2014-12-11 22:26:31 · 1126 阅读 · 0 评论 -
windows基础应用程序编程(十)子类和超类
子类和超类是windows中两个很有用的概念,我们已经知道,所谓的windows控件是指,利用CreateWindow函数来调用系统预定义的窗口类,如“button”,“static”等等。我们知道WNDCLASS结构中有一个记录窗口过程函数地址的参数。可想而知,我们的控件所对应的窗口过程函数也是由系统帮我们完成的,所以我们才可以向控件发送一系列的控件消息。了解这些之后,我们来看看什么事子类和超类原创 2014-12-09 16:14:14 · 872 阅读 · 0 评论 -
windows基础应用程序编程(九)控件简介(二)
子窗口和父窗口间的消息传递 子窗口和父窗口之间如何进行通信呢,答案是肯定,仍然是通过消息来传递,以按钮为例,当我们用鼠标单击按钮的时候,此时子窗口(也就是按钮)会向其父窗口发送一个WM_COMMAND的消息。其中消息的各个参数如下所示:wParam:低字节表示子窗口的ID,这个值使我们使用CreateWindow时传递的参数,即其中的HMENU项。高字节表示通知码,根据通知码我们可以原创 2014-12-09 13:15:12 · 480 阅读 · 0 评论 -
windows基础应用程序编程(八)控件简介(一)
至今为止,我们的程序都是建立在一个窗口类,一个窗口回调函数的基础上的。但是我们的程序往往不止一个窗口,我们在程序中有着多个窗口。多个按钮等(按钮也是窗口,之后解释)。那么,如果要生成多个窗口,我们可能就需要不止一个窗口回调函数,下面我们首先来介绍一下子窗口的概念,之后,再来了解windows系统为我们提供的一些控件窗口的使用。子窗口我们在程序中,往往需要多个窗口。这些窗口把客户区划分成多个原创 2014-09-29 17:38:07 · 590 阅读 · 0 评论 -
windows基础应用程序编程(七)鼠标消息
上一篇中,我们介绍了键盘消息,接下来,我们来了解一下鼠标消息。在上一篇中,我们知道Windows只把键盘消息发送给拥有输入焦点的窗口。鼠标消息与此不同,只要鼠标跨越窗口或者在某窗口中按下鼠标键,那么窗口过程就会受到鼠标消息,而不管该窗口是否活动或者是否拥有输入焦点。同键盘消息类似,鼠标消息也简单的可以分为客户区鼠标消息和非客户区鼠标消息。客户区鼠标消息当鼠标通过窗口的客户区时,窗口过程原创 2014-09-26 18:12:13 · 1454 阅读 · 0 评论 -
windows基础应用程序编程(六)键盘消息
简介在windows系统中,键盘和鼠标是两个很重要的外设装置,如果我们需要让我们的应用程序对鼠标和键盘来进行响应。那么我就就需要相应对应的鼠标和键盘消息,接下来,我么首先了解一下关于键盘消息的内容。在了解键盘消息之前,我们需要首先了解一下关于焦点的知识,我们知道,键盘只有一个,而我们的计算机可以同时运行多个程序,也就是说,在Windows下运行的所有应用程序共享我们的键盘。那么当我们敲下键原创 2014-09-23 22:48:34 · 1011 阅读 · 1 评论 -
windows基础应用程序编程(五):图标和加速键
图标图标想必大家都不会感到陌生,图标及显示在我们的应用程序的左上角的那个图案。(当然不止在这里显示。)不用我的过多介绍,大家估计也已经知道在程序的何处来添加我们的自定义图标。不错,在我们之前介绍窗口类结构体中,可以发现其中有着hIcon的一项。在我们之前的程序中,我们都是使用如下语句来初始化这个变量。wndclass.hIcon = LoadIcon( NULL, MAKEINTRESOU原创 2014-09-22 11:34:22 · 886 阅读 · 0 评论 -
windows基础应用程序编程(三):GDI简介
GDI即Graphics Device Interface图形设备接口,计算机的输出设备是由很大的不同的。即使仅对于显示器而言也存在着不同大小的尺寸等等区别。那么为了屏蔽这些区别所造成的程序编写内容的不同。于是,这个东西就诞生了,我们可以利用这个统一的接口,利用GDI为我们提供的绘图函数,来输出我们程序所要求的输出结果。设备描述表GDI中有一个很重要的概念,我们称之为设备描述表,简称为DC原创 2014-08-11 21:09:06 · 822 阅读 · 0 评论 -
windows基础应用程序编程(二):消息说明
运行了上一篇文章中所讲的程序之后,我们会惊讶的发现,这个窗口有这着许多丰富的功能,我们可以对这个窗口进行窗口最小和最大化,在水平和垂直方向上随意的更改窗口的大小,并且还发现右键单击程序的标题栏,会弹出一个菜单,这个菜单我们称之为系统菜单。这些功能都是windows系统帮我们完成的。是不是很强大啊?系统菜单如下所示:原创 2014-08-10 14:23:59 · 735 阅读 · 0 评论 -
windows基础应用程序编程(四):菜单
添加菜单凡是接触过windows系统的,我想对菜单都不会感到陌生,菜单是Windows应用程序提供刚给一致用户界面的很重要的部分。(还记得窗口类结构中的lpszMenuName项吗?)想要在程序中使用菜单,我们首先需要定义菜单资源,打开VS2010,新建一个Win32的空项目,新建一个源文件并把之前的windows应用程序的通用框架复制粘贴上去。然后,我们需要再新建一个资源脚本文件,在解决原创 2014-09-18 22:48:30 · 2047 阅读 · 0 评论 -
windows基础应用程序编程(十三)定时器
简介 定时器相对来讲比较简单,主要用于我们程序中的定时功能,当我们需要使用定时器的时候,需要用一个SetTimer函数来建立一个定时器,如果建立成功,系统会在指定的时间内调用SetTimer函数所指定的回调函数,或者向指定的窗口过程发送WM_TIMER消息。需要注意的是,WM_TIMER是一个低级别的消息,也就是说Windows只有在消息队列中没有其他的消息的情况下才会发送WM_TIME原创 2014-12-14 15:19:16 · 759 阅读 · 0 评论