[ruby-gnome2-doc-cvs] [Hiki] create - tips_toolbar

Back to archive index

ruby-****@sourc***** ruby-****@sourc*****
2003年 9月 1日 (月) 00:09:02 JST


-------------------------
REMOTE_ADDR = 218.231.205.39
REMOTE_HOST = 
        URL = http://ruby-gnome2.sourceforge.jp/ja/?tips_toolbar
-------------------------
= ツールバー上のボタンのアイコンだけ変更する
以下に例を示します。

 require 'gtk2'

 Gtk.init
 
 toolbar = Gtk::Toolbar.new
 toolbar.append(Gtk::Stock::NEW) do
   toolbar.children[0].child.children[0].set(Gtk::Stock::QUIT, Gtk::IconSize::SMALL_TOOLBAR)  #(1)
 end
 Gtk::Window.new.add(toolbar).show_all
 
 Gtk.main

(1)の部分は以下のように分解して書けます。

   button = toolbar.children[0]
   vbox = button.child
   image = vbox.children[0]
   image.set(Gtk::Stock::QUIT, Gtk::IconSize::SMALL_TOOLBAR)

処理の流れは以下のようになります。

(1)Gtk::ToolbarはGtk::ContainerのサブクラスなのでGtk::Container#childrenで子ウィジェットを全て取得できます。で、今回はその1番目の子ウィジェットを変更の対象とします。
(2)Gtk::ButtonはGtk::Binのサブクラスで子ウィジェットは1つしかありません。子ウィジェットはGtk::Bin#childで取得でき、Gtk::VBoxになります。
(3)Gtk::VBoxもGtk::Containerのサブクラスです。vbox.children[0]で1番目の子ウィジェットであるGtk::Imageを取得します。
(4)取得したGtk::Imageに対し、新しいアイコンをセットします。





ruby-gnome2-cvs メーリングリストの案内
Back to archive index