GTK程序设计

来源:互联网 发布:libreoffice python 编辑:程序博客网 时间:2024/06/05 11:17

1.GTK软件开发包的安装

GTK+2.0软件包是用于开发图形界面程序的工具包。想要获得更多关于GTK+2.0的信息,请浏览网址:www.gtk.org

如何在Ubuntu Linux(乌班图)操作系统中安装GTK+2.0软件包?

这有一种方法如下:

确保你的Ubuntu联网,然后启动终端程序。

在终端中输入以下命令:

sudo apt-get install libgtk2.0-dev

并回车,即可进行GTK+2.0工具包的安装。

 

强烈推荐使用如下命令安装GTK+的帮助文档:

sudo apt-get install libgtk2.0-doc devhelp

并回车,现在你可以在自己的Ubuntu中使用GTK+2.0工具包开发自己的GTK程序。

 

开发环境搭建成功后,就可以进行GTK图形界面开发。下面以Hello,Kitty!为例子,介绍GTK图形界面开发的过程。

2. Hello,Kitty!

打开终端控制台,使用gedit编辑工具新建两个文件,文件内容如下所示:

/*
* hello_kitty.c
*
* Created on: 2009-8-2
*      Author: young
*/

#include <gtk/gtk.h>

int main(int argc, char *argv[]) {
GtkWidget *wnd; /* 主窗体 */
GtkWidget *box;   /* 组装盒 */
GtkWidget *btn;   /* 按钮 */
GtkWidget *image; /* 图像 */
GtkWidget *label; /* 标签 */

    gtk_init(&argc, &argv); /* 初始化GTK库 */

    wnd = gtk_window_new(GTK_WINDOW_TOPLEVEL);    /* 创建主窗体构件 */
    gtk_window_set_title(GTK_WINDOW(wnd), "Hello,Kitty!"); /* 设置窗体标题 */
    gtk_window_set_default_size(GTK_WINDOW(wnd), 300, 200); /* 设置窗体默认大小 */

    btn = gtk_button_new(); /* 创建按钮构件 */
    gtk_container_add(GTK_CONTAINER(wnd), btn); /* 将按钮添加到窗体上 */

    box = gtk_hbox_new(TRUE, 5); /* 创建组装盒 */
    gtk_container_set_border_width(GTK_CONTAINER(box), 2); /* 设置边框宽度 */

    image = gtk_image_new_from_file("hellokitty.jpg"); /* 创建图像构件 */
    gtk_box_pack_start(GTK_BOX(box), image, FALSE, FALSE, 5); /*将图像构件添加到组装盒上*/

    label = gtk_label_new("Hello, Kitty!/n    --To Kitty/n/n(C) 2009 Chinsoft Workroom"); /* 创建标签 */
    gtk_box_pack_start(GTK_BOX(box), label, FALSE, FALSE, 5); /* 将标签构件添加到组装盒上 */

    gtk_container_add(GTK_CONTAINER(btn), box); /* 将组装盒构件添加到按钮构件上 */

     /* 当点击关闭按钮时,响应销毁窗体信号,程序退出 */

    g_signal_connect(GTK_OBJECT(wnd), "destroy", G_CALLBACK(gtk_main_quit), NULL);

    gtk_widget_show_all(wnd); /* 显示所有的构件 */
    gtk_main(); /* 事件主循环 */

    return 0;

}

makefile文件

# this is makefile of the program hello_kitty.c
# the standard c compiler in the ubuntu linux is gcc
# written by young on August 2th, 2009

          TARGET = .
                   CC = gcc
          CFLAGS = -g
             MAINC = hello_kitty.c
              EXEC = $(TARGET)/hello_kitty
           GTKLIB = `pkg-config --cflags --libs gtk+-2.0`

all: $(EXEC)

$(EXEC): $(MAINC)
$(CC) $(CFLAGS) $(MAINC) $(GTKLIB) -o $@
@echo "<<<<<< $@ created successfully! >>>>>>"

clean:
rm -f $(EXEC)

注意:红色字体应使用Tab键开头,否则使用make命令编译时会出错!

在终端控制台中将从网上下载的hellokitty.jpg移到hello_kitty目录中,并进入hello_kitty目录,在终端中输入make命令,即可编译程序。

运行程序,界面如下所示:

 

 

 

参考资料

1. GTK学习笔记

网址:http://caterpillar.onlyfun.net/Gossip/GTKGossip/GTKGossip

原创粉丝点击