色選択ダイアログ
概要
Gtk::ColorSelectionDialog により色選択ダイアログを表示する。基本的にはGtk::MessageDialogと同様にすれば良い。 初期の色はget_colorsel()->set_current_color()でセットし、 選択した色はget_colorsel()->get_current_color()で取得する。
ソース
colordiag.cpp#include <gtkmm.h> class MainWin : public Gtk::Window { public: MainWin(); }; MainWin::MainWin() { resize( 200, 100 ); Gtk::ColorSelectionDialog diag( "色選択" ); // 初期の色セット Gdk::Color col; col.set_rgb( 65535, 65535, 0 ); diag.get_colorsel()->set_current_color( col ); switch( diag.run() ){ case Gtk::RESPONSE_OK: // 背景色変更 modify_bg( Gtk::STATE_NORMAL, diag.get_colorsel()->get_current_color() ); break; case Gtk::RESPONSE_CANCEL: break; } } int main( int argc, char *argv[] ) { Gtk::Main kit( argc, argv ); MainWin mainwin; Gtk::Main::run( mainwin ); return 0; }
コンパイル
必要なコンパイルオプションは pkg-config を使って取得する。g++ colordiag.cpp -o colordiag `pkg-config gtkmm-2.4 --cflags --libs`
結果
実行すると色選択ダイアログが表示され、選択した色でウィジットが塗りつぶされる。