gtk图形编程

gtk图形编程

ID:22951943

大小:53.00 KB

页数:5页

时间:2018-11-02

gtk图形编程  _第1页
gtk图形编程  _第2页
gtk图形编程  _第3页
gtk图形编程  _第4页
gtk图形编程  _第5页
资源描述:

《gtk图形编程 》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、GTK图形编程【摘要】本文介绍了Linux平台下的Xalloc函数就有自己加强的调试功能。GTK可以与多种语言绑定,包括C++,Guile,Perl,Python,Ton,Ada95,ObjectiveC,FreePascal,Eiffel。用标准C开发的程序,编译软件可用GNU并附带上GTK选项即可。想用除了标准C以外的其它语言来开发Xain(intargc,char*argv[]){Gtkp;argv);/*初始化显示环境*/ain();/*进入睡眠状态,等待事件激活*/return(0);}从上面的程序可以看出,GTK是一个事件驱动工具包,当它运行到gtk_main()函数时会自动

2、睡眠,直到有事件发生,控制权转让给相应的函数调用,在该函数中可以用标准C写出相应的事物逻辑。这与e,GtkSignalFunccallback_func,gpointerfunc_data);返回值是一个区分同一对象中的事件与不同回调函数的关联标签。这样可以做到一个对象的一个信号就有任意多个回调函数,并且每一个都会按照声明的顺序执行。函数调用的第一个参数是产生信号的e则是希望捕获的信号或事件的名称,callback_func则是事件发生后所调用的回调函数名称,而第四个参数func_data则是传递给回调函数的参数。回调函数要定义在主程序的前面,它们的一般格式都如下所示:voidcallb

3、ack_func(GtkWidget*widget,gpointerfunc_data);调用下面这个方法将允许你将回调函数与事件的关联断开:voidgtk_signal_disconnect(GtkObject*object,gintid);该函数的第二个参数就是上述gtk_signal_connect()函数的返回值,即关联标签。第一个参数指向了去除关联的对象名称。这样可以做到断开事件与回调函数的关联,使得事件发生后,不会调用相关的回调函数。布局格式2.1打包盒子对GTK显示格式的控制是通常通过打包盒子来完成的。widget组件打包可以采用两种方式,水平盒子和垂直盒子。若将widge

4、t组件打包进平行盒子,组件就被依次水平的插入窗口;若是垂直盒子,则组件排列是垂直的。产生新的水平盒子的函数为Gtkogeneous是用来控制是否盒子中的每个组件都有同样的大小(例如水平盒子中的控件有同样的宽度,垂直盒子中的控件有同样的高度)。Spacing参数是组件之间的间隔。垂直盒子的创建函数是gtk_vbox_new(),定义与水平盒子一致。gtk_box_pack_start()和gtk_box_pack_end()函数是用来将打包对象放入这些盒子中的。voidgtk_box_pack_start(GtkBox*box,GtkWidget*child,gintexpand,gint

5、fill,gintpadding);第一个参数是你将组件打进去的盒子指针,第二个参数是你将要打进去的组件指针。Expand参数是用来控制是否允许组件扩展至分配给盒子空间的大小(选TRUE),还是盒子的大小收缩到组件那么大(选FALSE)。函数中的fill参数是用来控制是否将多余的空间分配给组件,即将组件扩展到盒子的大小(选TRUE),或者多余的空间不变,保留作为盒子和打包组件间的间隔。该参数只有在expand参数取TRUE时才有效。Padding参数是指组件四周与盒子的间隔大小。注意fill取FALSE值,expand取TRUE值时与expand取FALSE值,fill值无效的区别。前者

6、的盒子仍是原来创建盒子时指定的大小,而后者的盒子已经缩小到打包组件的大小了。gtk_box_pack_end()函数的参数与上面描述的一致。只是排列顺序分别是从下到上,从右到左。最后将所有的盒子或组件打包到一个大盒子中,用gtk_container_add()函数将盒子加入窗口即可。2.2表格打包我们可以产生一个表格,将ns,ginthomogeneous);第一个参数,显而易见,是表格的行数。后面的参数则是表格的列数。homogeneous参数则是用来安排表格间隔大小。如果它取TRUE,则表格中每个小格的大小用表格中最大组件的大小来设置的,所有的小格大小都是一样的。如果homogene

7、ous参数取FALSE的,每个小格的大小都用同行中最高组件的高度,同列中最宽组件的宽度。将一个_attach,gintxoptions,gintyoptions,gintxpadding,gintypadding);left_attach参数和right_attach参数将指出在哪儿放置组件,以及用了多少盒子。如果你想在两行两列的表格中的右下小格中加入一个按钮,并且想让按钮充满那个小格,则参数可以选择left_attach=1,ri

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

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

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