内容

更新日: 2005/11/24
バージョン: gtkmm24

■ 概要
■ ソース
■ コンパイル
■ 結果

TOP

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`

結果