CodeBlock下的人机交互界面设计.doc

CodeBlock下的人机交互界面设计.doc

ID:55550235

大小:207.00 KB

页数:25页

时间:2020-05-16

CodeBlock下的人机交互界面设计.doc_第1页
CodeBlock下的人机交互界面设计.doc_第2页
CodeBlock下的人机交互界面设计.doc_第3页
CodeBlock下的人机交互界面设计.doc_第4页
CodeBlock下的人机交互界面设计.doc_第5页
资源描述:

《CodeBlock下的人机交互界面设计.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、CodeBlock下的人机交互界面设计人机交互界面指的是计算机系统与用户之间的接口。通过该接口,一方面,计算机系统向用户输出系统的运行状态、运行控制和运行结果等方面信息;另一方面,用户根据输出信息向系统输入相应的指令和数据等信息。3.4.1控制台窗口和屏幕缓冲区控制台窗口是个二维平面空间,其坐标系统的原点(0,0)设在窗口左上角,即窗口第一行第一列字符单元的位置。横轴(X轴)的正向沿原点向右,与窗口的第一行重合,每刻度为一个字符宽度;纵轴(Y轴)的正向沿原点向下,与窗口的第一列重合,每刻度为一个字符高度。窗口中每个字符单元对应一个二维坐标。比如,第5行第32列字符单元的

2、坐标为(31,4)。如图3.8所示。图3.8控制台窗口和屏幕缓冲区关系示意图屏幕缓冲区是个二维数组,逻辑上可看作一个二维平面空间。数组第一个元素的下标[0][0]对应此平面空间坐标系统的原点(0,0),数组第1维的下标对应坐标系统的纵坐标(Y坐标),第2维下标对应坐标系统的横坐标(X坐标)。屏幕缓冲区存放着M行N列字符单元的信息,M和N的大小由系统设置,并可以进行修改。每个字符单元信息用一个CHAR_INFO结构类型的数据来表示,结构成员Char存放字符的码值(Unicode码或ASCII码,取决于系统所采用的字符集),结构成员Attributes存放字符的属性(字符显

3、示所用的前景色和背景色)。操作系统以一定的频率从屏幕缓冲区读取字符单元信息,并显示在控制台窗口中。应用程序的输出信息实际上输出到了屏幕缓冲区,由此改变了控制台窗口所显示的内容。初始状态下,屏幕缓冲区坐标系统与控制台窗口坐标系统重合,窗口中第m行第n列字符的码值和颜色值存放在屏幕缓冲区二维数组中下标为[m-1][n-1]的元素中。利用控制台函数可以改变这两个坐标系统的对应关系,实现特殊的显示效果。图3.8表示了控制台窗口和屏幕缓冲区的相互关系。一个控制台可拥有多个屏幕缓冲区,但只有处于激活状态的屏幕缓冲区内容显示在控制台窗口中。操作系统在为进程创建控制台的同时会创建一个屏

4、幕缓冲区。进程可调用函数CreateConsoleScreenBuffer为其控制台创建另外的屏幕缓冲区。调用函数SetConsoleActiveScreenBuffer可以将某个已有的屏幕缓冲区置为激活状态,使其内容显示在屏幕窗口中。不管是否处于激活状态,屏幕缓冲区都可以通过句柄来进行读写操作,只不过激活状态下屏幕缓冲区的内容可以看到,非激活状态下看不到而已。屏幕缓冲区相关的多个属性可以独立进行设置。激活的屏幕缓冲区属性值的变化能在控制台窗口中产生奇妙的外观效果。屏幕缓冲区相关的属性包括:l屏幕缓冲区大小,以字符行和列为单位;l文本属性(文本信息显示的前景色和背景色)

5、;l窗口大小和定位(控制台屏幕缓冲区在控制台窗口中显示时所处的矩形区域);l光标位置、外观和是否可见;l输出模式(控制字符的输出处理和行末换行处理)。屏幕缓冲区在创建时,它所包含的字符内容初始化为空格,光标设为可见并定位在缓冲区原点(0,0),而窗口的原点(左上角)与缓冲区原点置为重合。控制台屏幕缓冲区的大小、窗口的大小、文本属性和光标的外观取决于用户或系统的缺省设置。为获取控制台屏幕缓冲区各种相关属性的当前值,可分别调用函数:GetConsoleScreenBufferInfo;GetConsoleCursorInfo;GetConsoleMode。屏幕缓冲区光标信息

6、用CONSOLE_CURSOR_INFO结构类型的数据表示,成员bVisible表示光标是否可见,成员dwSize表示光标外观大小,取值范围为1~100。光标可见时,dwSize的取值从100变为1,光标外观大小从充满整个字符单元变为出现在单元底部的一条水平线。调用函数GetConsoleCursorInfo和SetConsoleCursorInfo分别可以获得和设置光标属性值。由高级控制台I/O函数(如getchar,putchar,printf,scanf等)输出的字符将输出在光标当前位置,同时光标移动到下一个字符输出位置。调用函数:GetConsoleScreen

7、BufferInfo和SetConsoleCursorPosition,分别可以获得和设置光标在屏幕缓冲区坐标系统中的当前位置,由此可以控制高级I/O函数输出或回显字符的位置。字符属性分为两类:颜色属性和DBCS(Double-ByteCharacterSet,双字节字符集)属性。表3.14中的符号常量在wincon.h头文件中进行定义。表3.14字符属性符号常量表属性含义FOREGROUND_BLUE文本颜色包含蓝色FOREGROUND_GREEN文本颜色包含绿色FOREGROUND_RED文本颜色包含红色FOREGROUND_INTE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。