MiniGUI概要设计说明书汇.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MiniGUI概要设计说明书汇

MiniGUI 特性说明书 本文档说明 MiniGUI 所支持的功能特性。 一、概述 MiniGUI 是 Linux 控制台上运行的,基于 SVGALib 和 LinuxThread 库的多窗口图形用户界面支持系统。MiniGUI 采用了类 Win32 的 API 接口,实现了简化的类 Windows 98 风格的图形用户界面。 图形用户界面在许多情况下都优于字符界面,其最大的优点是使应用程序的操作简单易学。 在 MiniGUI 中,图形用户界面包括如下基本元素: 图 1.1 图形用户界面的基本元素 1.1 窗口 MiniGUI 中的窗口基本分四类,分别为主窗口、对话框、控件和主窗口中的窗片。 MiniGUI 中的主窗口和 Windows 应用程序的主窗口概念类似,但略微有些不同,MiniGUI 中的每个主窗口对应于一个单独的线程,通过函数调用可建立主窗口以及对应的线程。每个线程有一个消息队列,主窗口从这一消息队列中获取消息并由窗口过程(回调函数)进行处理。 MiniGUI 中的对话框是一种特殊的窗口,对话框一般和控件一起使用,这两个概念和 Windows 的相关概念是类似的。MiniGUI 支持的控件类型有: 静态框:文本、图标或矩形框等。这种控件的属性一般不会在运行时发生变化。 文本框:单行或多行的文本编辑框。 按钮:单选钮、复选框和一般按钮等。 其他特殊控件。 窗片是 MiniGUI 所特有的,窗片实际是主窗口的子窗口,只存在于主窗口中。为了处理上的方便,主窗口的子窗口只以平铺的形式出现,因此我们将这种子窗口称为“窗片”或“窗格”。窗片可以是私有的控件类型,也可以是标准的控件类型。 1.2 消息和消息循环 在Windows系列操作系统中,广泛使用了消息驱动的概念。在MiniGUI中,我们也使用了消息驱动作为应用程序的创建构架。 在消息驱动的应用程序中,计算机外设发生的事件,例如键盘键的敲击、鼠标键的按击等,都由支持系统收集,将其以事先的约定格式翻译为特定的消息。应用程序一般包含有自己的消息队列,系统将消息发送到应用程序的消息队列中。应用程序可以建立一个循环,在这个循环中读取消息并处理消息,一直处理到特定的消息传来为止。这样的循环称为消息循环。一般地,消息由代表消息的一个整型数和消息的附加参数组成。例如,鼠标左键的按下消息,可能由133这个数来表示,其附加参数可能包含按下时的鼠标所在位置信息。例如,MiniGUI中如下定义消息: typedef struct { HWND hwnd; int message; WPARAM wParam; LPARAM lParam; ... }MSG; message 指定了特定的消息类型,wParam 是以unsigned int类型定义的消息的短参数,lParam 是以 long 类型定义的消息长参数。 应用程序一般要提供一个处理消息的标准函数。在消息循环中,系统可以调用此函数,应用程序在此函数中处理相应消息。 图 1.2是一个消息驱动的应用程序的简单构架示意。 图 1.2 消息驱动的应用程序的简单构架 在 MiniGUI 中,消息分为如下几种类型: 系统消息,为系统内部管理使用。 鼠标消息,鼠标的点击、移动等产生的消息。 键盘消息,键盘的按键消息。 窗口消息,窗口管理消息。 菜单消息,菜单管理消息。 命令消息等。 1.3 窗口过程和窗口类 窗口过程是用来处理窗口消息的函数过程。对于同一类型的控件,其窗口过程一般是一样的。因此,系统一般利用窗口的窗口类名来区分不同的窗口类并调用不同的窗口过程。由于几乎每一个主窗口均和其他窗口有着不同的窗口过程,因此,在 MiniGUI 中,窗口类的概念只存在于控件和窗片中。对于主窗口来说,其窗口过程在建立主窗口时指定,而对控件和窗片来说,则在注册窗口类时指定,而在建立窗片或控件时指定所属窗口类。 1.4 句柄 句柄是 MiniGUI 用来标识对象的标识符。句柄和指针概念类似,但它不一定是指针值。利用句柄,MiniGUI 将系统变量从应用项目中分离了出来,因为程序员只能通过句柄访问对象,因而就没有利用指针是可能发生的因非法访问而导致的数据不一致问题。 在 MiniGUI 中,窗口、控件、设备环境、菜单、图标等均使用句柄访问。 二、窗口 2.1 应用程序和主窗口 我们将基于 MiniGUI 的一个会话(session)称为一个应用项目,而其中每个单独的线程或线程组称为应用。每个应用项目可建立多个应用。主窗口是建立在 MiniGUI 基础上的应用的主界面。MiniGUI 为每个主窗口建立单独的消息队列,在该主窗

文档评论(0)

liwenhua11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档