#include <gtk/gtk.h>
gint count=1;
/*该函数实现按下按钮在终端中显示一段话*/
void on_button_clicked(GtkWidget *button,gpointer userdata)
{
g_print("你好,这是hello功能的测试.");
//g_print("%d\n",(gint)userdata);
g_print("%d\n",count);
count=count+1;
}
int main(int argc,char *argv[])
{
GtkWidget *window; // 声明要创建的构建
GtkWidget *button;
gtk_init(&argc,&argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL); // 创建 window
g_signal_connect(G_OBJECT(window),"delete_event",G_CALLBACK(gtk_main_quit),NULL); // window 接受 “delete_event”信号
gtk_window_set_title(GTK_WINDOW(window),"Hello 功能实现"); // 窗口标题,大小,显示位置等设置
gtk_window_set_default_size(GTK_WINDOW(window),500,100);
gtk_window_set_position(GTK_WINDOW(window),GTK_WIN_POS_CENTER);
gtk_container_set_border_width(GTK_CONTAINER(window),40);
button = gtk_button_new_with_label("按下此按钮会在终端显示一行信息");
g_signal_connect(G_OBJECT(button),"clicked",G_CALLBACK(on_button_clicked),(gpointer)count);
gtk_container_add(GTK_CONTAINER(window),button); // 将button放入window中
gtk_widget_show(button); // 显示button 和 window
gtk_widget_show(window);
gtk_main();
return FALSE;
}
编译方式如下,可以写在makefile中:
cc = gcc
all:
$(cc) -o hello hello.c `pkg-config --cflags --libs gtk+-2.0`
结构如下:
/*点滴积累,我的一小步O(∩_∩)O~*/