コンボボックス
概要
Gtk::Combo によってコンボボックスを作成するセットしたい文字列を std::list< Glib::ustring > によりリスト型で順次指定し、set_popdown_strings()によりセットする。
選択中の文字列を取得したい場合はget_entry()->get_text()によりおこなう。
ソース
combo.cpp
#include <gtkmm.h>
class MainWin : public Gtk::Window
{
Gtk::Combo m_combo;
public:
MainWin();
virtual ~MainWin();
};
MainWin::MainWin()
{
std::list< Glib::ustring > list_ustr;
list_ustr.push_back( "行1" );
list_ustr.push_back( "行2" );
list_ustr.push_back( "行3" );
m_combo.set_popdown_strings( list_ustr );
add( m_combo );
show_all_children();
}
MainWin::~MainWin()
{
Gtk::MessageDialog diag( *this, m_combo.get_entry()->get_text() );
diag.run();
}
int main( int argc, char *argv[] )
{
Gtk::Main kit( argc, argv );
MainWin mainwin;
Gtk::Main::run( mainwin );
return 0;
}
コンパイル
必要なコンパイルオプションは pkg-config を使って取得する。g++ combo.cpp -o combo `pkg-config gtkmm-2.4 --cflags --libs`
結果