⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ex23_2.c

📁 linux 高级编程的例子源码,包括了本书上的所有代码
💻 C
字号:
/*filename:ex23_2.c*/
#include <gtk/gtk.h>

gint delete_handle(GtkWidget *widget,gpointer gdata)
{
	g_print("application quitting----\n");
	gtk_main_quit();
	return FALSE;
}
void OnButton(GtkWidget *widget,gpointer gdata)
{
	  g_print("Button Signal: %s \n",gdata);	
	  return ;
}
GtkWidget *CreateWidgetFromXpm( GtkWidget *parent,
                          gchar     *xpm_filename)
{
    GtkWidget *pixmapwid;
    GdkPixmap *pixmap;
    GdkBitmap *mask;
    GtkStyle *style;
    style=gtk_widget_get_style(parent);
    pixmap = gdk_pixmap_create_from_xpm (parent->window, &mask,
					 &style->bg[GTK_STATE_NORMAL],
					 xpm_filename);
    pixmapwid = gtk_pixmap_new (pixmap, mask);
    gtk_widget_show(pixmapwid);
    return(pixmapwid);
}

int main(int argc, char *argv[])
{

    GtkWidget *window=NULL;    
    GtkWidget *toolbar;
    GtkWidget *box;
    gtk_init(&argc, &argv);
    
    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_window_set_title(GTK_WINDOW(window),"Test Toolbar");
    gtk_widget_set_usize(window,200,240);
    gtk_container_border_width(GTK_CONTAINER(window),0);
    gtk_signal_connect(GTK_OBJECT(window),"delete_event",
          GTK_SIGNAL_FUNC(delete_handle),NULL);

    box=gtk_vbox_new(FALSE,0);
    gtk_container_add (GTK_CONTAINER (window), box);
    gtk_widget_show(box);

	toolbar=gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL,GTK_TOOLBAR_ICONS);
	gtk_box_pack_start(GTK_BOX(box),toolbar,FALSE,TRUE,0);
	gtk_widget_show(toolbar);

    gtk_toolbar_append_item(GTK_TOOLBAR(toolbar),NULL,"Up","",CreateWidgetFromXpm(box,"arrup.xpm"),
		                                 GTK_SIGNAL_FUNC(OnButton),"Up");
	gtk_toolbar_append_item(GTK_TOOLBAR(toolbar),NULL,"Down","",CreateWidgetFromXpm(box,"arrdown.xpm"),
		                                 GTK_SIGNAL_FUNC(OnButton),"Down");
	gtk_toolbar_append_space(GTK_TOOLBAR(toolbar));
	gtk_toolbar_append_item(GTK_TOOLBAR(toolbar),NULL,"Arrows","",CreateWidgetFromXpm(box,"arrows.xpm"),
		                                 GTK_SIGNAL_FUNC(OnButton),"Arrows");
    gtk_widget_show(window);    
    gtk_main ();
    
	return 0;
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -