昨日終了。
明日からGlibっす。
#include
#include
#define DEFAULT_BORDER 10
#define DEFALUT_WINDOW_WIDTH 300
#define DEFALUT_WINDOW_HEIGHT 100static void cb_button( GtkWidget* widget, gpointer data )
{
// callback function, when button is pushed
g_print( (gchar*) data );
}int main( int argc, char* argv[] )
{
GtkWidget* window;
GtkWidget* button;
gchar* message;
// make a base window
gtk_init( &argc, &argv );
window = gtk_window_new( GTK_WINDOW_TOPLEVEL );
gtk_window_set_title( GTK_WINDOW( window ), "Button Sample" );
gtk_window_set_default_size( GTK_WINDOW( window ), DEFALUT_WINDOW_WIDTH, DEFALUT_WINDOW_HEIGHT );
gtk_container_set_border_width( GTK_CONTAINER( window ), DEFAULT_BORDER );
g_signal_connect( G_OBJECT( window ), "destroy", G_CALLBACK( gtk_main_quit ), NULL );// add button to the base window
button = gtk_button_new_with_label( "Click me" );
gtk_container_add( GTK_CONTAINER( window ), button );// map a callback function for the button
// with passing "message" as data
message = g_strdup( "Hello World\n" );
g_signal_connect( G_OBJECT( button ), "clicked", G_CALLBACK( cb_button ), (gpointer) message );// show the widget, including any child widget
gtk_widget_show_all( window );
// start main loop
gtk_main();
return EXIT_SUCCESS;
}