ruby-****@lists*****
ruby-****@lists*****
2003年 6月 22日 (日) 23:48:46 JST
------------------------- REMOTE_ADDR = 61.26.70.211 REMOTE_HOST = URL = http://ruby-gnome2.sourceforge.jp/?%A5%A2%A5%ED%A5%A6 ------------------------- = アロウ アロウウィジェットは矢印の頭(矢尻、アローヘッド)を描くウィジェットで, 矢印の向きやスタイルにはいろんな種類がある. 多くアプリケーションではボタンの上に配置すると便利だろう. ラベルウィジェット同様,アロウウィジェット自身はシグナルを発行しない. アロウウィジェットを操作するためのメソッド: Gtk::Arrow.new(arrow_type, shadow_type) Gtk::Arrow#set(arrow_type, shadow_type) 1文目は矢印の向きと外見を指定して矢印ウィジェットを作成している. 2文目のGtk::Arrow#setメソッドで,今までのウィジェットと同じような方法でアロウウィジェットの属性(矢印の向きや外見)を変更できる. Gtk::Arrow#arrow_typeでarrow_type(矢印の向き)を読み出すことができる. arrow_typeの取り得る値は: Gtk::Arrow::UP Gtk::Arrow::DOWN Gtk::Arrow::LEFT Gtk::Arrow::RIGHT おわかりの通り上記の値は矢印の向きに対応している. 次の2つのメソッドでarrow_typeを変更できる. Gtk::Arrow#arrow_type=(arrow_type) Gtk::Arrow#set_arrow_type(arrow_type) Gtk::Arrow#shadow_typeでshadow_type(影のタイプ)を読み出すことができる. shadow_typeの取り得る値: Gtk::SHADOW_IN Gtk::SHADOW_OUT Gtk::SHADOW_NONE Gtk::SHADOW_ETCHED_IN Gtk::SHADOW_ETCHED_OUT 次の2つのメソッドでshadow_typeを変更できる. Gtk::Arrow#set_shadow_type(shadow_type) Gtk::Arrow#shadow_type=(shadow_type) サンプルプログラム: #! /usr/bin/env ruby require 'gtk2' Gtk::init # アロウウィジェットのパラメータをセットして作成しボタンウィジェットにパック def create_arrow_button(arrow_type, shadow_type) button = Gtk::Button.new arrow = Gtk::Arrow.new(arrow_type, shadow_type) button.add(arrow) end window = Gtk::Window.new(Gtk::Window::TOPLEVEL) window.title= "Arrow Buttons" window.signal_connect("destroy") {Gtk::main_quit} window.border_width= 10 box = Gtk::HBox.new(false, 0) box.border_width = 2 window.add(box) # アロウウィジェットのパラメータを4種類変化させ # create_arrow_buttonメソッドを呼び出し矢印付きボタンを生成する [ [Gtk::Arrow::UP, Gtk::SHADOW_IN], [Gtk::Arrow::DOWN, Gtk::SHADOW_OUT], [Gtk::Arrow::LEFT, Gtk::SHADOW_ETCHED_IN], [Gtk::Arrow::RIGHT, Gtk::SHADOW_ETCHED_OUT], ].each do |args| button = create_arrow_button(*args) box.pack_start(button, false, false, 3 ) end window.show_all Gtk::main ------------------------- = アロウ アロウウィジェットは矢印の頭(矢尻、アローヘッド)を描くウィジェットで, 矢印の向きやスタイルにはいろんな種類がある. 多くアプリケーションではボタンの上に配置すると便利だろう. ラベルウィジェット同様,アロウウィジェット自身はシグナルを発行しない. アロウウィジェットを操作するためのメソッド: Gtk::Arrow.new(arrow_type, shadow_type) Gtk::Arrow#set(arrow_type, shadow_type) 1文目は矢印の向きと外見を指定して矢印ウィジェットを作成している. 2文目のGtk::Arrow#setメソッドで,今までのウィジェットと同じような方法でアロウウィジェットの属性(矢印の向きや外見)を変更できる. Gtk::Arrow#arrow_typeでarrow_type(矢印の向き)を読み出すことができる. arrow_typeの取り得る値は: Gtk::Arrow::UP Gtk::Arrow::DOWN Gtk::Arrow::LEFT Gtk::Arrow::RIGHT おわかりの通り上記の値は矢印の向きに対応している. 次の2つのメソッドでarrow_typeを変更できる. Gtk::Arrow#arrow_type=(arrow_type) Gtk::Arrow#set_arrow_type(arrow_type) Gtk::Arrow#shadow_typeでshadow_type(影のタイプ)を読み出すことができる. shadow_typeの取り得る値: Gtk::SHADOW_IN Gtk::SHADOW_OUT Gtk::SHADOW_NONE Gtk::SHADOW_ETCHED_IN Gtk::SHADOW_ETCHED_OUT 次の2つのメソッドでshadow_typeを変更できる. Gtk::Arrow#set_shadow_type(shadow_type) Gtk::Arrow#shadow_type=(shadow_type) {{image_right "arrow.png"}} サンプルプログラム: #! /usr/bin/env ruby require 'gtk2' Gtk::init # アロウウィジェットのパラメータをセットして作成しボタンウィジェットにパック def create_arrow_button(arrow_type, shadow_type) button = Gtk::Button.new arrow = Gtk::Arrow.new(arrow_type, shadow_type) button.add(arrow) end window = Gtk::Window.new(Gtk::Window::TOPLEVEL) window.title= "Arrow Buttons" window.signal_connect("destroy") {Gtk::main_quit} window.border_width= 10 box = Gtk::HBox.new(false, 0) box.border_width = 2 window.add(box) # アロウウィジェットのパラメータを4種類変化させ # create_arrow_buttonメソッドを呼び出し矢印付きボタンを生成する [ [Gtk::Arrow::UP, Gtk::SHADOW_IN], [Gtk::Arrow::DOWN, Gtk::SHADOW_OUT], [Gtk::Arrow::LEFT, Gtk::SHADOW_ETCHED_IN], [Gtk::Arrow::RIGHT, Gtk::SHADOW_ETCHED_OUT], ].each do |args| button = create_arrow_button(*args) box.pack_start(button, false, false, 3 ) end window.show_all Gtk::main