linux下的gtk图形界面编程

linux下的gtk图形界面编程

ID:23869904

大小:53.50 KB

页数:5页

时间:2018-11-11

linux下的gtk图形界面编程_第1页
linux下的gtk图形界面编程_第2页
linux下的gtk图形界面编程_第3页
linux下的gtk图形界面编程_第4页
linux下的gtk图形界面编程_第5页
资源描述:

《linux下的gtk图形界面编程》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Linux下的GTK图形界面编程(中国人民解放军信息工程大学)苏洁王京林周东方【摘要】本文介绍了Linux平台下的Xalloc函数就有自己加强的调试功能。GTK可以与多种语言绑定,包括C++,Guile,Perl,Python,Ton,Ada95,ObjectiveC,FreePascal,Eiffel。用标准C开发的程序,编译软件可用GNU并附带上GTK选项即可。想用除了标准C以外的其它语言来开发Xain(intargc,char*argv[]){Gtkp;argv);/*初始化显示环境*/ain

2、();/*进入睡眠状态,等待事件激活*/return(0);}从上面的程序可以看出,GTK是一个事件驱动工具包,当它运行到gtk_main()函数时会自动睡眠,直到有事件发生,控制权转让给相应的函数调用,在该函数中可以用标准C写出相应的事物逻辑。这与e,GtkSignalFunccallback_func,gpointerfunc_data);返回值是一个区分同一对象中的事件与不同回调函数的关联标签。这样可以做到一个对象的一个信号就有任意多个回调函数,并且每一个都会按照声明的顺序执行。函数调用的第一

3、个参数是产生信号的e则是希望捕获的信号或事件的名称,callback_func则是事件发生后所调用的回调函数名称,而第四个参数func_data则是传递给回调函数的参数。回调函数要定义在主程序的前面,它们的一般格式都如下所示:voidcallback_func(Gtkogeneous是用来控制是否盒子中的每个组件都有同样的大小(例如水平盒子中的控件有同样的宽度,垂直盒子中的控件有同样的高度)。Spacing参数是组件之间的间隔。垂直盒子的创建函数是gtk_vbox_nens,ginthomogene

4、ous);第一个参数,显而易见,是表格的行数。后面的参数则是表格的列数。homogeneous参数则是用来安排表格间隔大小。如果它取TRUE,则表格中每个小格的大小用表格中最大组件的大小来设置的,所有的小格大小都是一样的。如果homogeneous参数取FALSE的,每个小格的大小都用同行中最高组件的高度,同列中最宽组件的宽度。将一个_attach,gintxoptions,gintyoptions,gintxpadding,gintypadding);left_attach参数和right_att

5、ach参数将指出在哪儿放置组件,以及用了多少盒子。如果你想在两行两列的表格中的右下小格中加入一个按钮,并且想让按钮充满那个小格,则参数可以选择left_attach=1,right_attach=2,top_attach=1,bottom_attach=2。其实left_attach也就是组件所在小格的左边框是表格的第几条边数,其它依此类推。参数xoptions和yoptions是用来确定打包选项的,可以用OR来选择多个选项。调节器GTK有很多组件可以用鼠标或键盘来调整,例如范围组件(Rangeen

6、t*adjustment);不同的可调整组件都用一个调节器时,任何一个组件发生调整变化都会产生该信号。有两种情况会导致这个现象的发生。第一种情况是用户在用鼠标或键盘调整该组件(例如拉滚动条),或者直接在程序中用gtk_adjustment_set_value()函数来改变调节器中的value值。当调节器的upper参数和loent*adjustment);范围组件将该信号与一个信号处理器相关联,并随时在面板上反映参数的变化。举个例子,滚动条中滑动键的大小与调节器中upper,loit_by_name

7、(GTK_OBJECT(adjustment),"changed");创建组件小结从上面可看出,创建一个y_prog.c–omy_prog.o–lgtk–lgdk↙完成后在Xy_prog.o程序即可。目前X窗口(Xotif编程更为简单方便,功能也很强大,有着较好的应用前景。目前网上已经有很多利用该软件包开发出来的自由发布软件,极大的丰富了Linux平台的应用。

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

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

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