Gtk::Frameによるグループ化
概要
設定ダイアログなどでいくつかのボタンなどがグループ化されてラベル付けされている時があるが これはGtk::Frameを用いて行う。Gtk::Frame自体はGtk::Binのサブクラスであるので普通にadd()によりウィジットを貼り付けることが 出来る。ラベルはset_label()で指定する。
ソース
frame.cpp
#include <gtkmm.h>
class MainWin : public Gtk::Window
{
Gtk::Frame m_frame;
Gtk::HBox m_hbox;
Gtk::Button m_bt1, m_bt2;
public:
MainWin();
};
MainWin::MainWin()
: m_bt1( "button1" ), m_bt2( "button2" )
{
m_hbox.set_border_width( 8 );
m_hbox.set_spacing( 8 );
m_hbox.pack_start( m_bt1 );
m_hbox.pack_start( m_bt2 );
m_frame.set_label( "ラベル" );
m_frame.add( m_hbox );
set_border_width( 16 );
add( m_frame );
show_all_children();
}
int main( int argc, char *argv[] )
{
Gtk::Main kit( argc, argv );
MainWin mainwin;
Gtk::Main::run( mainwin );
return 0;
}
コンパイル
必要なコンパイルオプションは pkg-config を使って取得する。g++ frame.cpp -o frame `pkg-config gtkmm-2.4 --cflags --libs`
結果