Re: Hello and Help Pleaseeeee :)
- From: John Cupitt <john cupitt ng-london org uk>
- To: NunO fELICIO <nmpf netvisao pt>
- Cc: gtk-list gnome org
- Subject: Re: Hello and Help Pleaseeeee :)
- Date: Fri, 30 Apr 2004 11:15:26 +0000
Hi,
NunO fELICIO wrote:
But my problem is that the windows only appear as the program execution
reach gtk_main :(
i want just to do like this....
start:
show_splash_window();
wait_5_seconds();
while(NO_KEY)
show_inactive_window(); // window that show some thing like ("Please press
any key...." )
show_first_window();
show_second_window();
goto start;
You need to call gtk_main() every time you show a window, and gtk_main_quit() to exit gtk_main().
Something like this:
#include <stdio.h>
#include <gtk/gtk.h>
void
button_click( GtkWidget *button )
{
/* This will make the gtk_main() which called us return.
*/
gtk_main_quit();
}
GtkWidget *
make_window( int n )
{
GtkWidget *window;
GtkWidget *button;
char label[256];
window = gtk_window_new( GTK_WINDOW_TOPLEVEL );
snprintf( label, 256, "Loop #%d", n );
button = gtk_button_new_with_label( label );
g_signal_connect( G_OBJECT( button ), "clicked",
G_CALLBACK( button_click ), NULL );
gtk_container_add( GTK_CONTAINER( window ), button );
return( window );
}
int
main( int argc, char **argv )
{
int i;
gtk_set_locale();
gtk_init( &argc, &argv );
for( i = 0; i < 10; i++ ) {
GtkWidget *window;
window = make_window( i );
gtk_widget_show_all( window );
gtk_main();
gtk_widget_destroy( window );
}
return( 0 );
}
Use timeouts and event handlers to spot key presses and the 5 sec thing you were asking about.
John
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]