Windows程序设计笔记(1)

来源:互联网 发布:火箭回收知乎 编辑:程序博客网 时间:2024/06/11 14:39

GUI:graphical user interface    图形用户界面

WYSIWYG:what you see is what you get   所见即所得

OLE:object linking and embedding    物件连接和嵌入

TrueType字体技术:给windows带来可缩放的轮廓字体

Windows提供一种图形程式语言(称作图形装置介面,或者GDI),使显示图形和格式化文字更容易。

MS-DOS: microsoft disk operating system     磁碟作业系统

windows运作机制的核心是:动态连接
DLL:Dynamic linking library       动态连接程式库
在早期,windows的主要部分仅通过三个动态连接程式库实作,这代表了windows的三个主要子系统,即kernel、user、GDI

MFC:microsoft Foundation Class Library

MSDN: microsoft developer network Microsoft软体开发者网络

6位元字元码系统BCDIC(Binary-Coded Decimal Interchange Code:二进位编码十进位交换编码)

ASCII:American Standard Code For Information Interchange        美国资讯交换标准码

128个字元码:26个小写字母,26个大写字母,10个数字,32个符号,33个代号和一个空格

DBCS:double-byte character set  双位元组字元集
Windows 支援四个不同的双位元组字元集:内码表932(日文)、936(简体中文)、949(韩语)和950(繁体汉字)。只有为这些国家(地区)生产的Windows版本才支援DBCS。

Unicode 使用(特别在C 程式设计语言环境里)「宽字元集」。「Unicode 中的每个字元都是16 位元宽而不是8 位元宽。
Unicode 字串占用的记忆体是ASCII 字串的两倍。

多位元组字元集主要影响C语言程式执行时期程式库函式,因此宽字元比正常字元宽,而且会引起一些编译问题。
宽字元不需要是Unicode。Unicode是一种可能的宽字元集。

在实际的程式中,视窗、视窗类别、视窗讯息处理程式、讯息伫列、讯息回圈和视窗讯息是如何相互配合的。
视窗和讯息:注册视窗类别、建立视窗、显示视窗、程式进入讯息回圈、不断从讯息伫列中取出讯息来处理。
视窗讯息处理程式可任意命名。一个windows程式可以包含多个视窗讯息处理程式。一个视窗讯息处理程式总是与呼叫RegisterClass注册的特定视窗类别相关联。CreateWindow函式根据特定视窗类别建立一个视窗。但依据一个视窗类别,可以建立多个视窗。


当程式使用多媒体功能呼叫,而内定的专案中又不包括多媒体程式库档案,则连结程式报告错误资讯,表明PlaySound函式不可用。
方法一:在开头加上“#pragama comment(lib,"WINMM.LIB")”的声明
方法二:在VS2008中,选择project->win32App Properties->Linker->Input->Additional dependencies中添加WINMM.LIB

字首类别识别字:
 CS:视窗类别样式
 CW:建立视窗
 DT:绘制文字
 IDI:图示ID
 IDC:游标ID
 MB:讯息方块
 SND:声音
 WM: 视窗讯息
 WS: 视窗样式
Windows表头档案中定义的四种资料结构:
 MSG:            讯息结构
 WNDCLASS:  视窗类别结构
 PAINTSTRUCT: 绘图结构
 RECT:   矩形结构
用于不同型态的代号:
 HINSTANCE:  执行实体(程式自身)代号
 HWND:   视窗代号
 HDC:   装置内容代号
 HICON:   图示代号
 HCURSOR:  滑鼠游标代号
 HBRUSH:   画刷代号
匈牙利表示法中经常用到的变数字首:
 c:   char或wCHAR或TCHAR
 by:   BYTE(无正负号字元)
 n:   short
 i:   int
 x,y:  int分别用作x坐标和y坐标
 cx,cy:  int分别用作x长度和y长度;C代表“计数器”
 b或f:  BOOL(int);f代表"旗标"                旗标在计算机科学中是一个被很好理解的概念。 在它的核心,一个旗标是一个单个整型值, 结合有一对函数, 典型地称为 P 和 V。一个想进入临界区的进程将在相关旗标上调用 P; 如果旗标的值大于零,这个值递减 1 并且进程继续。相反, 如果旗标的值是 0 ( 或更小),进程必须等待直到别人释放旗标。解锁一个旗标通过调用 V 完成;这个函数递增旗标的值, 并且, 如果需要, 唤醒等待的进程。
 w:   WORD(无正负号短整数)
 l:   LONG(长整数)
 dw:   DWORD(无正负号长整数)
 fn:   function
 s:   string
 sz:   以位元组值0结尾的字串
 h:   代号
 p:   指标
 
GetLastError 是Windows中常用的函式,它可以在函式呼叫失败时获得更多错误资讯。不同函式的文件将指出您是否能够用GetLastError 来获得这些资讯。

讯息能够被分为"伫列化"和"非伫列化"。
 伫列化的讯息是由windows放入程式讯息伫列中的。
 非伫列化的讯息在windows呼叫视窗时直接送给视窗讯息处理程式。
 任何情况下,视窗讯息处理程式都将获得视窗所有的讯息--包括伫列化的和非伫列化的。视窗讯息处理程式是视窗的"讯息中心"。
 
在混合显示字体和图形时,windows内定字体的字元大小通常决定了图形的尺寸。
windows程式只能对显示区域大小甚至字元的大小做很少的假定,相反地,必须使用windows提供的功能来取得关于程式执行环境的资讯。、、

原创粉丝点击