【程序编程相关:xml-了解 XML 命名空间】
【推荐阅读:xml-通过 XML 发布新闻】
本文介绍了linux平台下的xwindow图形窗口编程工具gtk,并给出了用gtk编程的基本要素与步骤. gtk,回调函数,消息处理器,调节器 【扩展信息:微软 2004-10-16 笔试题解析】苏洁 王京林 周东方(中国人民解放军信息工程大学) gtk(gimp toolkit)是一个图形用户编程的接口工具.它注册完全免费,所以用来开发自由软件或商业软件都不需要花费什么.现在很多linux集成系统都已经将gtk1.2版本打包进去了.包括redhat linux 6.0以上版本,还有中文化的turbo linux等等.它也越来越被普遍的应用于unix系统编程. 还有一个组件叫glib,它包含了一些标准应用的新扩展用来提高gtk的兼容性.用于linux系统的某些函数可能不适合标准的unix系统,例如g_strerror()函数等等.某些函数也扩展了gnuc的一般功能,例如g_malloc函数就有自己加强的调试功能.gtk可以与多种语言绑定,包括c++, guile, perl, python, ton, ada95, objective c, free pascal, eiffel.用标准c开发的程序,编译软件可用gnu并附带上gtk选项即可.想用除了标准c以外的其它语言来开发xwindow图形用户程序,则需要先参考一下有关绑定软件的内容(http:// www.gtk.org). 如果用c++语言来调用gtk进行开发,可以用已经与c++绑定的软件叫gtk--软件,来提供一个比gtk更好的c++编译环境.
目前已经开发出来gtk的增强版gtk+.gtk+是将gtk,gdk,glib集成在一起的开发包,可以工作在许多类似于unix的系统上,没有gtk的平台限制. 1.gtk的消息处理机制 下面我们先看一个基本的例子,该例子产生一个200×200像素的窗口.它不能自己退出,只能通过shell来杀死进程(调用kill命令). /*例子 base.c */ #include <gtk/gtk.h> int main( int argc,char *argv[ ] ){ gtkwidget *window; gtk_init (&argc, &argv); /* 初始化显示环境 */ window = gtk_window_new (gtk_window_toplevel); /* 创建一个新的窗口*/ gtk_widget_show (window); /*显示窗口*/ gtk_main (); /*进入睡眠状态,等待事件激活*/ return(0); }... 下一页