linux-Gtk图形界面程序设计

linux-Gtk图形界面程序设计

ID:36886063

大小:468.00 KB

页数:16页

时间:2019-05-10

linux-Gtk图形界面程序设计_第1页
linux-Gtk图形界面程序设计_第2页
linux-Gtk图形界面程序设计_第3页
linux-Gtk图形界面程序设计_第4页
linux-Gtk图形界面程序设计_第5页
资源描述:

《linux-Gtk图形界面程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2021年9月17日第12章Gtk+图形界面程序设计2021年9月17日主要内容Gtk+的主要功能Gtk+简介利用Gtk+开发图形界面程序基本程序示例应用容器的程序示例2021年9月17日Gtk+的作用Gtk+工具包在XWindows中的作用是Xlib之上更高层的开发工具包,它们将底层的Xlib的API进行封装,提供更高级的接口,达到降低开发难度,提高开发效率的目的。网络协议X客户端(应用程序)X工具包、Gtk+,QtXLibX客户端(应用程序)X工具包、Gtk+,QtXLibX服务器设备驱动程序2021

2、年9月17日Gtk+简介来源:Gimp(GUNImageManipulationProgram)以Gtk+为基础的应用软件GimpGladeGnomeAbiworddia等Gtk+的主要组成Glib:底层核心库Pango:界面布局和国际化Atk:其它功能2021年9月17日开发图形界面程序基本程序示例on_btn_clicked(),按钮事件处理程序on_delete(),窗口关闭事件处理程序helloworld.c代码片断1部分辅助函数1#include2voidon_btn_cl

3、icked(GtkWidget*widget,gpointerdata){3g_print("HelloWorld!");4}5voidon_delete(GtkWidget*widget,GdkEvent*event,gpointerdata){6g_print("WindowClosed.");7gtk_main_quit();8}2021年9月17日helloworld.c代码片断2——主函数部分9intmain(intargc,char*argv[]){10GtkWidget*window

4、;11GtkWidget*button;12gtk_set_locale();13gtk_init(&argc,&argv);//初始化运行环境14window=gtk_window_new(GTK_WINDOW_TOPLEVEL);//创建窗口15gtk_window_set_title(GTK_WINDOW(window),"HelloWorld!");16gtk_container_set_border_width(GTK_CONTAINER(window),10);17g_signal_conne

5、ct(G_OBJECT(window),"delete_event",18G_CALLBACK(on_delete),NULL);//关联窗口关闭事件19button=gtk_button_new_with_label("HelloWorld");20g_signal_connect(G_OBJECT(button),"clicked",21G_CALLBACK(on_btn_clicked),NULL);//关联按钮事件22gtk_container_add(GTK_CONTAINER(window),

6、button);23gtk_widget_show_all(window);//显示窗口24gtk_main();//启动消息循环25return0;26}2021年9月17日基本程序示例程序运行效果组成:一个按钮一个窗口动作:点击按钮,在终端输出一个字符串点击关闭窗口,在终端输出一个字符串后,退出2021年9月17日基本程序示例程序的编译运行假设条件:源文件保存在当前工作目录中;源文件命名为helloworld.c利用gcc编译:命令:$gcchelloworld.c–ohelloworld`pkg-c

7、onfiggtk+-2.0--cflags--libs`说明输出文件为helloworld以命令pkg-configgtk+-2.0--cflags--libs的运行结果为gcc的额外参数;运行:./helloworld运行2021年9月17日常用事件及处理函数原型常用的gtk+事件及处理函数原型事件源事件名处理函数原型GtkWidgetshowvoiduser_function(GtkWidget*widget, gpointerdata);expose-eventgbooleanuser_functi

8、on(GtkWidget*widget, GdkEventExpose*event, gpointerdata);delete-eventGtkButtonactivatevoiduser_function( GtkButton*widget, gpointerdata);clickedenterGtkComboBoxchangedvoiduser_function(GtkComboBox*widget, gpointerda

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

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

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