色の選択

2014年9月7日

ファイル

14-color.tar.gz

内容

色選択ダイアログを表示するボタンを作ります。部品の配置には水平方向ボタンボックスを使います。

	box = gtk_hbutton_box_new();
	gtk_button_box_set_layout(GTK_BUTTON_BOX(box), GTK_BUTTONBOX_SPREAD);
	gtk_container_add(GTK_CONTAINER(win), box);

色選択ダイアログボタンは gtk_color_button_new() で作ります。

	button = gtk_color_button_new();

色がセットされたとき、"color-set" イベントが起こります。

	g_signal_connect(button, "color-set", G_CALLBACK(colorSet), NULL);

設定された色を取得するには、次のようにします。

	GdkColor color;

	gtk_color_button_get_color(GTK_COLOR_BUTTON(button), &color);
	printf("%d, %d, %d\n",
	  (int)round(color.red/65535.*255),
	  (int)round(color.green/65535.*255),
	  (int)round(color.blue/65535.*255));

GdkColor の red, green, blue はそれぞれ 0 〜 65535 の値をとります。

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