ウインドウの表示

2010年2月11日

ファイル

01-window.tar.gz

内容

ウインドウを表示します。Gtk+ を使うためにインクルードファイルをインクルードします。

#include <gtk/gtk.h>

gtk_set_locale() でロケールの設定をします。

	gtk_set_locale();

gtk_init() で初期化します。

	gtk_init(&argc, &argv);

gtk_window_new() でウインドウを作成します。

	win = gtk_window_new(GTK_WINDOW_TOPLEVEL);

gtk_window_set_title() でウインドウのタイトルを設定、gtk_window_resize() でウインドウのサイズを設定します。

	gtk_window_set_title(GTK_WINDOW(win), TITLE);
	gtk_window_resize(GTK_WINDOW(win), WIDTH, HEIGHT);

スクリーンの大きさは、次のようにして得られます。

	screen = gtk_window_get_screen(GTK_WINDOW(win));
	w = gdk_screen_get_width(screen);
	h = gdk_screen_get_height(screen);

スクリーンの大きさから、ウインドウをスクリーン中央に移動します。

	x = (w - WIDTH)/2;
	y = (h - HEIGHT)/2;
	gtk_window_move(GTK_WINDOW(win), x, y);

ウインドウをスクリーンの中央に移動するだけなら、もっと簡単に、以下の 1 行でも可能です。

	gtk_window_set_position(GTK_WINDOW(win), GTK_WIN_POS_CENTER);

g_signal_connect で、ウインドウに "destroy" イベントが発生したときのコールバック関数を設定します。

	g_signal_connect(win, "destroy", G_CALLBACK(gtk_main_quit), NULL);

上ではプログラムを終了する関数 gtk_main_quit() を設定しています。

ウインドウを表示します。

	gtk_widget_show_all(win);

準備が整ったら、gtk_main() でメインループに入りましょう。

	gtk_main();

GTK+ プログラミング 目次へ