/*为了美观,增加了程序运行时主界面显示以及程序logo,做法思想,创建主窗口,创建small窗口,显示动画,3s后超时删除small窗口,显示主窗口,
这样就简单的做了个启动界面显示*/
主要代码如下:
int main(int argc,char *argv[])
{
/*1.1 创建主界面*/
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
window = GTK_WIDGET(gtk_builder_get_object(builder,"MainWindow");
......
/*1.2 创建启动界面*/
image = gtk_image_new_from_file("start.ico");/*此处start.ico可以是一张图片或是动画*/
gtk_box_pack_start(GTK_BOX(topbox),image,FALSE,FALSE,5);/*设置启动动画显示的位置大小*/
gtk_windget_show_all(small);/*启动界面显示*/
timer = g_timeout_add(START_TIMER_COUNT,(GSourceFunc)DealTimer,small);/*启动界面只显示START_TIMER_COUNT,如3000ms定时器超时*/
g_gtkvar.timer = timer;
}
/*2 定时器超时函数*/
gboolean DealTimer(gpointer* small)
{ g_source_remove(gtkvar.timer);
gtk_widget_hide((GtkWidget*)small);/*隐藏small窗口也即是启动界面消失*/
gtk_widget_destroy((GtkWidget*)small);
gtk_widget_show_all(g_gtkvar.structdata->window);/*显示主窗口*/
}
/*3 程序启动后,logo显示*/
gtk_window_set_title(GTK_WINDOW(window),"whoareyou?");
gtk_window_set_icon(GTK_WINDOW(window),CreatePixbuf("iam.ico"));/*程序的logo*/