Ruby-tk-paned

提供:Dev Guides
移動先:案内検索

Ruby/TK-パンウィンドウウィジェット

*Panedwindow* ウィジェットを使用すると、2つ以上のサイズ変更可能なウィジェットを上下(または左右)にスタックできます。

ユーザーは、各ペインの間にあるサッシをドラッグして、各ペインの相対的な高さ(または幅)を調整できます。 通常、区画ウィンドウに追加するウィジェットは、他の多くのウィジェットを含むフレームになります。

構文

このウィジェットを作成する簡単な構文は次のとおりです-

Tk::Tile::Paned.new(root) {
   .....Standard Options....
   .....Widget Specific Options....
}

標準オプション

  • クラス
  • カーソル
  • スタイル *フォーカス

ウィジェット固有のオプション

Sr.No. Options & Description
1
  • orient* ⇒ String

    *horizo​​ntal* または *vertical* のいずれか。 セパレーターの方向を指定します。
2
  • width *⇒ Integer

存在し、ゼロより大きい場合、ウィジェットの希望する幅をピクセルで指定します。 それ以外の場合、要求された幅は管理対象ウィンドウの幅によって決まります。

3
  • height* ⇒ Integer

存在し、ゼロより大きい場合、ウィジェットの希望する高さをピクセル単位で指定します。 それ以外の場合、要求された高さは管理対象ウィンドウの高さによって決まります。

ペインの操作

  • "add" メソッドを呼び出すと、ペインのリストの最後に新しいペインが追加されます。 "insert _position subwindow _" メソッドを使用すると、ペインのリスト(0..n-1)内の指定された位置にペインを配置できます。ペインが既にペインウィンドウによって管理されている場合、新しい位置に移動されます。 "forget _subwindow _" を使用して、ペインウィンドウからペインを削除できます。サブウィンドウの代わりに位置を渡すこともできます。
  • 他のオプションを使用すると、各ウィンドウに相対的な重みを付けて、ウィンドウ全体のサイズが変更された場合、特定のウィンドウが他のウィンドウよりも多くのスペースを確保できます。 同様に、パンウィンドウ内のアイテム間の各サッシの位置を調整できます。 詳細については、http://www.tcl.tk/man/tcl8.5/TkCmd/ttk_panedwindow [コマンドリファレンス]を参照してください。

require 'tk'
require 'tkextlib/tile'

$resultsVar = TkVariable.new
root = TkRoot.new
root.title = "Window"

p = Tk::Tile::Paned.new(root)do
   height 110
   place('height' => 100, 'width' => 200, 'x' => 10, 'y' => 10)
end

f1 = TkFrame.new(p) {
   relief 'groove'
   borderwidth 3
   background "red"
   padx 30
   pady 30
   pack('side' => 'left', 'pady' => 100)
}
f2 = TkFrame.new (p){
   relief 'groove'
   borderwidth 3
   background "yellow"
   padx 30
   pady 30
   pack('side' => 'right', 'pady' => 100)
}

p.add f1, nil
p.add f2, nil

Tk.mainloop

これは、次の結果を生成します-

Ruby/Tk paned