摘要:
工具栏(Toolbars)常用来将一些构件分组,这样能够简化定制它们的外观和布局。典型情况下工具栏由带图标和标签以及工具提示的按钮组成,不过,其它构件也可以放在工具栏里面。最后,各工具栏组件可以水平或垂直排列,还可以显示图标或标签,或者两者都显示。用下面的函数创建一个工具栏(可能有些人已经猜到了):GtkWidget *gtk_toolbar_new( void );创建工具栏以后,可以向其中追加、前插和插入工具栏项(这里意指简单文本字符串)或元素(这里意指任何构件类型)。要想描述一个工具栏上的对象,需要一个标签文本、一个工具提示文本、一个私有工具提示文本、一个图标和一个回调函数。例如,要前插 阅读全文
摘要:
一、标签构件 标签构件(GtkLabel)是GTK中最常见的构件,它是静态的不可编辑的字段。在屏幕上,常常用标号说明其他字段。在按钮上设置标签用来说明按钮,或者放在其他字段的旁边对该字段提供说明。它不能自身引发信号。 用gtk_label_new创建标签构件:1.名称::gtk_label_new功能:创建标签构件头文件:#include <gtk/gtk.h>函数原形:GtkWidget gtk_label_new(char *str);参数:str 标签构件正文返回值:新的标签构件 下面就是创建标号的程序例子:/*label1.c*/#include <gtk/gtk.h 阅读全文
摘要:
一、常用构件函数 最常用的构件是按钮构件、录入字段构件、列表框构件和复合框构件。所有建立按钮的函数返回指向GtkWidget的指针。GtkWidget指针能够调用对构件进行操作的通用函数。函数gtk_widget_show是通用函数的例子。 由于建立的构件是通用的构件,需要将它转换为正确的类型以适合调用更为专用的函数。如:建立按钮函数返回GtkWidget指针,但是专用的按钮子程序要求GtkButton指针。所有在调用专用的按钮函数以前,需要使用GTK_BUTTON宏将通用的GtK_Widget指针转换为GtKButton指针。 二、按钮 按钮时最简单的构件,因为它们的最常用功能是允许用户点击 阅读全文
摘要:
GTK+图形化应用程序开发学习笔记(五)—组装盒、组合表、固定容器构件一、组装盒 组装盒(GtkBox)也称为组合构件。使用组装盒可以将多个构件放在一个容器中。容器可以把组装盒看作是一个构件。不像按钮构件,组装盒在屏幕上时看不见的。事实上,它们是同时跟踪若干子构件的不可见容器。组装盒分为纵向组装盒和横向组装盒。纵向组装盒在垂直方向堆积构件,横向组装盒沿水平方向堆积构件。 使用gtk_vbox_new函数建立纵向组装盒,使用gtk_hbox_new函数建立横向组装盒。在建立组装盒以后,可以使用gtk_box_pack_start函数或gtk_box_pack_end函数将构件放到组装盒中。为了显 阅读全文
摘要:
一、构件 上一章我们介绍了如果创建一个窗体,但应用程序仅有一个窗体是不够的我们必须在窗体上添加一些东西(如:按钮,文本框等)。这些东西被称为构件,而我们添加的构件的载体被称为容器(如:主窗体)。构件(GtkWidget)有一些统一的函数对其操作,通常情况下我们定义一个GtkWidget类型的构件指针。再根据不同的需要进行转换。添加一个构建分5个步骤。 1、建立构件,并取得GtkWidget指针。 2、对构件设置回呼函数。一些构件不能有回调函数;一些构件不需要回调函数;但是,许多构件用回调函数与用户进行对话。 3、设置构件的特性。例如,对按钮设置标号,或使标号左对齐等。有时可以用建立构件的函数设 阅读全文
摘要:
一、初始化GTK+ 写GTK+程序需要调用gtk_init函数对GTK+库函数进行初始化。1.名称::gtk_init功能:初始化GTK+库头文件:#include <gtk/gtk.h>函数原形:void gtk_init(int *argc,char ***argv);参数:argc指向主函数argc的指针argv指向主函数argv的指针返回值:无在你程序使用到GTK+工具库之前,必须对它进行初始化。gtk_init可以初始化GTK+工具库。gtk_init的参数的指向主函数argc,argv的指针,它可以改变一些不满足GTK+函数要求的命令行参数。 因为gtk_init函数没 阅读全文
摘要:
在学习GTK+之前我们需要先学习一下 glib的有关知识。因为我们将会在以后的学习中遇到这些知识。由于本笔记不是专门介绍glib的,所以下面的介绍不会太详细。一、什么是glib库 glib库是linux平台下最常用的c语言函数库,它具有很好的可移植性和实用性。glib是gtk+库和gnome的基础。glib的各种实用程序具有一致的接口。glib为许多标准的、常用的C语言结构提供了相应的替代物。它的编码风格是半面向对象,标识符加了一个前缀“g”,这也是一种通行的命名约定。使glib库的程序都应该包含glib的头文件glib.h。如果程序已经包含了gtk .h则不需要再包含glib.h。 二、gl 阅读全文
摘要:
GTK+图形化应用程序开发学习笔记(一)—概述一、什么是GNOME、 GNOME的意思是“GNU Network Object Model Environment”(GNU网络对象模型环境),是Linux世界令人激动的软件开发成果。虽然它的名字比较长,但这个软件项目的目的却很简单,那就是实现一个永恒友好的、功能强大的用户和开发桌面环境,而这一环境又完全是以免费的开源代码软件为基础的。 正像它名字的那样,GNOME既是一个桌面,也是一个完整的程序设计环境。GNOME是底层X窗口系统和高层管理器软件中间的一个程序设计界面,它向GUI程序员提供了丰富的功能和强大的开发工具,这些工具是传统意义上的Li 阅读全文