?? sub1.c
字號:
#include<gtk/gtk.h>int count;int j=0;GtkWidget *scl[3];GtkWidget *button1;GtkWidget *lab;GdkColor color;gboolean flag=TRUE;void pauce_continue(GtkWidget *w,GdkEvent *e,gpointer data){ flag=!flag; if(!flag) { gtk_label_set_text(GTK_LABEL(lab),"sub1 has ben paused!"); gtk_button_set_label(GTK_BUTTON(button1),"run"); } else{ gtk_label_set_text(GTK_LABEL(lab),"sub1 is running now!"); gtk_button_set_label(GTK_BUTTON(button1),"pause"); } }gboolean updateprogress(){ if(flag) { count+=2; if(count>100) {count=0; j++; if(j>=3) { gtk_label_set_text(GTK_LABEL(lab),"sub1 has finished running!"); return FALSE; } } gtk_progress_bar_update(GTK_PROGRESS_BAR(scl[j]),(float)(count)/100.0); } return TRUE; }gint delete_event( GtkWidget *widget, GdkEvent *event, gpointer data ){ printf("sub1 quit!\n"); gtk_main_quit (); return FALSE;}int main( int argc, char *argv[] ){ GtkWidget *window; GtkWidget *button; GtkWidget *table; gint i,*x,*y; gint timer; count=0; gtk_init (&argc, &argv); color.red = 0; color.blue = 65535; color.green = 0; window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "SUB1"); g_signal_connect (G_OBJECT (window), "delete_event",G_CALLBACK (delete_event), NULL); timer=gtk_timeout_add(100,(GtkFunction)updateprogress,NULL); gtk_container_set_border_width (GTK_CONTAINER (window), 20); table = gtk_table_new (10, 2, TRUE); gtk_container_add (GTK_CONTAINER (window), table); button1=gtk_button_new_with_label("pause"); lab=gtk_label_new("sub1 is running now!"); button = gtk_button_new_with_label ("Quit"); g_signal_connect(G_OBJECT(button1),"clicked",G_CALLBACK(pauce_continue),NULL); g_signal_connect (G_OBJECT (button), "clicked",G_CALLBACK (delete_event), NULL); gtk_widget_modify_bg (GTK_WINDOW(window), GTK_STATE_NORMAL, &color); gtk_window_resize(GTK_WINDOW(window),300,240); if(argc==2) { if(strcmp(argv[1],"1")==0) gtk_window_move(GTK_WINDOW(window),20,20); else if(strcmp(argv[1],"2")==0) gtk_window_move(GTK_WINDOW(window),340,20); else gtk_window_move(GTK_WINDOW(window),680,20); } for(i=0;i<3;i++) { scl[i]=gtk_progress_bar_new(); gtk_progress_bar_update(GTK_PROGRESS_BAR(scl[i]),0); gtk_table_attach_defaults(GTK_TABLE(table),scl[i],0,2,i+2,i+3); gtk_widget_show(scl[i]); } gtk_table_attach_defaults(GTK_TABLE(table),lab,0,2,0,2); gtk_table_attach_defaults(GTK_TABLE(table),button1,0,1,7,9); gtk_table_attach_defaults(GTK_TABLE(table),button,1,2,7,9); gtk_widget_show (button1); gtk_widget_show(button); gtk_widget_show(lab); gtk_widget_show (table); gtk_widget_show (window); gtk_main (); return 0;}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -