分割表示のプログラム例です。
require '/opt/yklook/swing'
require '/opt/yklook/swingsplitpane'
|
def yki_make_display()
lis = YKLookList.new( ['項目1','項目2','項目3'] )
ta = YKLookTextArea.new()
sp = YKLookSplitPane.new( 'h' )
pan = YKLookPanelFlow.new()
sp.yk_add( lis )
sp.yk_add( ta )
pan.yk_add( sp )
yk_add( pan )
sp.yk_set_divider_location( 0.25 )
end
|
この例では、全体を左右に分け、左側にリスト、右側にテキストエリアを入れています。
メソッド
yk_set_divider_location()
を使って、初期表示時のそれぞれの表示サイズの割合を、リストが4分の1、テキストエリアが4分の3
にしています。
注意: |
分割表示内部に持つ二つのGUI部品にあらかじめ設定されている部品サイズの不一致が原因で、指定した割合どおりに分割して表示されないことがあります。
そのときは、GUI部品のサイズを設定してから分割表示に追加してください。
設定するサイズは厳密なものではなく、だいたいの目安で構いません。
|
この例のように、パネル
pan
に直接追加するものが分割表示だけなら、このパネル
pan
自体を省略できる場合もあります。
その場合は以下のようになります。
require '/opt/yklook/swing'
require '/opt/yklook/swingsplitpane'
|
def yki_make_display()
lis = YKLookList.new( ['項目1','項目2','項目3'] )
ta = YKLookTextArea.new()
sp = YKLookSplitPane.new( 'h' )
sp.yk_add( lis )
sp.yk_add( ta )
yk_add( sp )
sp.yk_set_divider_location( 0.25 )
end
|
この例ではウインドウに直接追加しています。
ウインドウ自体は
YKLookPanelQuint
パネルを兼ねています。
一方、最初の例では分割表示を
YKLookPanelFlow
パネルに追加しています。
追加しているパネルの種類が違うので、表示結果が多少変わるかもしれません。
注意: |
このクラスを使うときは、上の例にもあるように swing
に加えて swingsplitpane も必ずロードしてください。
|