#include<gtk/gtk.h>
static GtkWidget *credits_window;
GtkWidget *create_credits ()
{
GtkWidget *window;
GtkWidget *vbox,*hbox;
GtkWidget *notebook,*button;
GtkWidget *page,*viewport;
GtkWidget *label,*text;
GtkWidget *entry,*image;//个人信息中的。
GdkPixbuf *pixbuf;
GtkTextBuffer *text_buffer;
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window),"kai fa ren yuan");
vbox=gtk_vbox_new(FALSE,0);
gtk_container_add(GTK_CONTAINER(window),vbox);
notebook=gtk_notebook_new();
gtk_box_pack_start(GTK_BOX(vbox),notebook,TRUE,TRUE,5);
page=gtk_vbox_new(FALSE,0);
viewport = gtk_viewport_new(NULL, NULL);
gtk_box_pack_start(GTK_BOX(page), viewport, TRUE, TRUE, 5);
text = gtk_text_view_new();
gtk_container_add(GTK_CONTAINER(viewport), text);
text_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text));
hbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(page), hbox, FALSE, FALSE, 5);
label=gtk_label_new("浏览通知");
gtk_notebook_append_page(GTK_NOTEBOOK(notebook),page,label);
//=================================================================================
page=gtk_vbox_new(FALSE,0);
viewport = gtk_viewport_new(NULL, NULL);
gtk_box_pack_start(GTK_BOX(page), viewport, TRUE, TRUE, 5);
text = gtk_text_view_new();
gtk_container_add(GTK_CONTAINER(viewport), text);
text_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text));
hbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(page), hbox, FALSE, FALSE, 5);
button = gtk_button_new_with_label("确认请假");
g_signal_connect(G_OBJECT(button), "clicked",
G_CALLBACK(gtk_main_quit), NULL);//
gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 5);
button = gtk_button_new_with_label(" 取消 ");
g_signal_connect(G_OBJECT(button), "clicked",
G_CALLBACK(gtk_main_quit), NULL);
gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 5);
label=gtk_label_new("申请请假");
gtk_notebook_append_page(GTK_NOTEBOOK(notebook),page,label);
//=====================================================================================
page=gtk_vbox_new(FALSE,0);
// label=gtk_label_new("yu 1123/nhello,nice to meet you /n glad to see you again");
hbox=gtk_hbox_new(FALSE,5);
gtk_box_pack_start(GTK_BOX(page),hbox,FALSE,FALSE,0);
viewport=gtk_viewport_new(NULL,NULL);
gtk_container_add(GTK_CONTAINER(page),viewport);
pixbuf=gdk_pixbuf_new_from_file("gnome-spider.png",NULL);
image=gtk_image_new_from_pixbuf(pixbuf);
gtk_container_add(GTK_CONTAINER(viewport),image);
hbox=gtk_hbox_new(FALSE,5);
gtk_box_pack_start(GTK_BOX(page),hbox,FALSE,FALSE,0);
label=gtk_label_new(" 学号: ");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
entry=gtk_entry_new();
gtk_box_pack_start(GTK_BOX(hbox),entry,FALSE,FALSE,0);
label=gtk_label_new(" 姓名: ");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
entry=gtk_entry_new();
gtk_box_pack_start(GTK_BOX(hbox),entry,FALSE,FALSE,0);
hbox=gtk_hbox_new(FALSE,5);
gtk_box_pack_start(GTK_BOX(page),hbox,FALSE,FALSE,0);
label=gtk_label_new(" 电话: ");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
entry=gtk_entry_new();
gtk_box_pack_start(GTK_BOX(hbox),entry,FALSE,FALSE,0);
label=gtk_label_new(" 成绩: ");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
entry=gtk_entry_new();
gtk_box_pack_start(GTK_BOX(hbox),entry,FALSE,FALSE,0);
hbox=gtk_hbox_new(FALSE,5);
gtk_box_pack_start(GTK_BOX(page),hbox,FALSE,FALSE,0);
label=gtk_label_new("请假次数:");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
entry=gtk_entry_new();
gtk_box_pack_start(GTK_BOX(hbox),entry,FALSE,FALSE,0);
label=gtk_label_new("迟到次数:");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
entry=gtk_entry_new();
gtk_box_pack_start(GTK_BOX(hbox),entry,FALSE,FALSE,0);
hbox=gtk_hbox_new(FALSE,5);
gtk_box_pack_start(GTK_BOX(page),hbox,FALSE,FALSE,0);
label=gtk_label_new("旷课次数:");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
entry=gtk_entry_new();
gtk_box_pack_start(GTK_BOX(hbox),entry,FALSE,FALSE,0);
label=gtk_label_new("早退次数:");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
entry=gtk_entry_new();
gtk_box_pack_start(GTK_BOX(hbox),entry,FALSE,FALSE,0);
hbox=gtk_hbox_new(FALSE,5);
gtk_box_pack_start(GTK_BOX(page),hbox,FALSE,TRUE,0);
label=gtk_label_new("获奖情况:");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
viewport=gtk_viewport_new(NULL,NULL);
gtk_container_add(GTK_CONTAINER(hbox),viewport);
text = gtk_text_view_new();
gtk_container_add(GTK_CONTAINER(viewport), text);
text_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text));
hbox=gtk_hbox_new(FALSE,5);
gtk_box_pack_start(GTK_BOX(page),hbox,FALSE,TRUE,0);
label=gtk_label_new("处分情况:");
gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
viewport=gtk_viewport_new(NULL,NULL);
gtk_container_add(GTK_CONTAINER(hbox),viewport);
text = gtk_text_view_new();
gtk_container_add(GTK_CONTAINER(viewport), text);
text_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text));
//gtk_box_pack_start(GTK_BOX(page),viewport,FALSE,FALSE,5);
label=gtk_label_new("个人信息");
gtk_notebook_append_page(GTK_NOTEBOOK(notebook),page,label);
//============================================================
page=gtk_vbox_new(FALSE,0);
viewport = gtk_viewport_new(NULL, NULL);
gtk_box_pack_start(GTK_BOX(page), viewport, TRUE, TRUE, 5);
text = gtk_text_view_new();
gtk_container_add(GTK_CONTAINER(viewport), text);
text_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text));
hbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(page), hbox, FALSE, FALSE, 5);
// gtk_box_pack_start(GTK_BOX(page),label,FALSE,FALSE,5);
label=gtk_label_new("留言板");
gtk_notebook_append_page(GTK_NOTEBOOK(notebook),page,label);
//=================================================================
gtk_widget_show_all(window);
return window;
}
void show_credits()
{
credits_window=create_credits();
gtk_widget_show(credits_window);
}
int main(int argc,char *argv[])
{
GtkWidget *window;
GtkWidget *bbox;
GtkWidget *vbox;
GtkWidget *label;
GtkWidget *image;
GtkWidget *sep;
GtkWidget *button;
gtk_init(&argc,&argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(G_OBJECT(window),"delete_event",G_CALLBACK(gtk_main_quit),NULL);
gtk_window_set_title(GTK_WINDOW(window),"about dialog");
gtk_window_set_position(GTK_WINDOW(window),GTK_WIN_POS_CENTER);
gtk_container_set_border_width(GTK_CONTAINER(window),10);
vbox=gtk_vbox_new(FALSE,0);
gtk_container_add(GTK_CONTAINER(window),vbox);
image=gtk_image_new_from_file("gnome-spider.png");
gtk_box_pack_start(GTK_BOX(vbox),image,FALSE,FALSE,5);
label=gtk_label_new(NULL);
gtk_label_set_markup(GTK_LABEL(label),"<span><big>GTK+2.0 shi li pian cheng</big></span>");
gtk_box_pack_start(GTK_BOX(vbox),label,FALSE,FALSE,5);
sep=gtk_hseparator_new();
gtk_box_pack_start(GTK_BOX(vbox),sep,FALSE,FALSE,5);
bbox=gtk_hbutton_box_new();
gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox),GTK_BUTTONBOX_EDGE);
gtk_box_pack_start(GTK_BOX(vbox),bbox,FALSE,FALSE,5);
button=gtk_button_new_with_label("kai fa ren yuan");
// gtk_box_pack_start(GTK_BOX(vbox),button,FALSE,FALSE,5);
g_signal_connect(G_OBJECT(button),"clicked",G_CALLBACK(show_credits),NULL);
gtk_box_pack_start(GTK_BOX(bbox),button,FALSE,FALSE,35);
gtk_widget_show_all(window);
gtk_main();
return FALSE;
}
文件名为:app.c
我是用emacs22-gtk 编译的:
gcc -g -Wall -o app app.c `pkg-config --cflags --libs gtk+-2.0`