详述嵌入式系统下Microwindows的实现
http://tech.ddvip.com 2007年03月12日 社区交流
本文详细介绍详述嵌入式系统下Microwindows的实现
在配置和检测了Microwindows初始安装程序以后,用“make install”指令来创建Nano-X 服务器、客户库和头文件,然后键入下述字符编译、链接和运行示例程序:
gcc sample.c –o sample –lnano-X
nano-X & sleep 1; sample键入escape将退出服务器。
GrOpen()函数用于打开一个与正在运行中的Nano-X 服务器的连接,如果服务器没有运行,则返回-1值,应用程序此时显示错误信息并退出。GrNewWindow函数在屏幕(20,20)的位置上创建一个100x60像素的窗口。它的边界大小为4像素宽,兰边白底。然后调用GrMapWindow函数将刚刚创建的窗口在屏幕上显示出来。这是因为有时生成一组窗口很方便,但是要根据用户指令在屏幕上显示和移动。在屏幕显示窗口以后,程序进入“event loop”状态,等待下一个鼠标或键盘事件。
Expose event
更为复杂的Nano-X应用程序基本上遵从上述同样的逻辑结构。首先生成窗口,接着显示出来,然后程序进入“event loop”等待用户发出指令。在该例中并没有真正写出明确的代码在窗口上画出东西。在实现这一点之前,首先应当理解关于Expose event的概念。Nano-X API提供一套完整的在屏幕上划线、写字、画圆和显示图像的函数。当一个窗口被遮住时,Microwindows剪辑该窗口图画并保存下来,当被遮掩部分再次需显示时,可以重新刷新以显示以前的内容。刷新发生时,服务器首先向应用程序发送一个Expose event,要求重新绘制窗口中的内容。Microwindows在首次显示窗口后就发出一个expose event指令,这样重新绘制时使用的代码和原来显示时所用的代码完全一样,所以可以实现在原先位置上显示同样的内容。下例是用该机制显示一些文字,并在窗口移动后重新显示出来(sample2.c).
作者:吴升艳 胡冰 岳春生 责编:豆豆技术应用
- Linux/Unix 新闻
- Linux/Unix 入门
- Linux/Unix 命令
- Linux/Unix 安装
- Linux 嵌入式系统
- Linux/Unix 编程
- Linux/Unix 管理
- Linux/Unix 桌面
- Linux/Unix 内核
- Linux/Unix 软件
- SCO Unix
- NetBSD
- OpenBSD
- Redhat/Fedora Linux
- 手机
- Linux/Unix find 搜索命令
- Linux/Unix vi 命令
- Linux/Unix kde 桌面环境
- Linux/Unix GNOME 桌面环境
- Linux/Unix Make 命令
- Linux/Unix crontab 命令
- Linux/Unix ext3 文件系统
- Linux/Unix 文件系统详解
- Linux/Unix ADSL 拨号设置
- Linux/Unix GRUB 配置及应用
- Linux/Unix nfs配置
- Linux/Unix 硬件信息查看及管理
- Linux/Unix 优化
- Linux/Unix 交换分区Swap管理及应用
- Linux/Unix 用户管理
- Linux/Unix Ramdisk
- Linux/Unix 密码恢复管理
- Linux/Unix 文件删除恢复
- Linux/Unix fdisk分区
- Linux/Unix lvs负载均衡管理
- Linux/Unix root用户
- Linux/Unix 集群
- Linux/Unix 日志
- 更多Linux/Unix专题……