| YKLook説明書 > クラス解説 > YKLookPanelGridBag | 機能別 ABC |
| ページ内リンク一覧 スーパークラス クラスメソッド インスタンスメソッド その他の項目 |
YKLookPanelGridBag クラスは、GUI部品を縦横に並べます。 YKLookPanelGrid クラスに似ていますが、より柔軟な設定ができます。| ページ内リンク一覧 |
| スーパークラス |
Object (Ruby 組み込みのクラス。すべてのオブジェクトのスーパークラス) ┃ ┗ YKLookSwingBase (YKLook のすべてのGUIオブジェクトの共通クラス) ┃ ┗ YKLookCompoent (YKLook のGUI表示部品の共通クラス) ┃ ┗ YKLookPanelGridBag (このクラス)
| クラスメソッド |
new() yk_find_objects() yk_find_objects( tagname ) yk_find_objects( tagname , tagno ) YKLookSwingBase.yk_find_objects の説明をご覧ください。 yk_find_objects_frame( frame ) yk_find_objects_frame( frame , tagname ) yk_find_objects_frame( frame , tagname , tagno ) YKLookSwingBase.yk_find_objects_frame の説明をご覧ください。 yk_look( tagname ) yk_look( tagname , tagno ) YKLookSwingBase.yk_look の説明をご覧ください。 yk_look_frame( frame , tagname ) yk_look_frame( frame , tagname , tagno ) YKLookSwingBase.yk_look_frame の説明をご覧ください。| インスタンスメソッド |
yk_add( gui , hash ) YKLookComponent クラスから派生しているすべてのクラスのオブジェクトです。| キー | 内容 | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 'gridx' |
GUI部品を配置するX方向の位置(列位置)を整数で指定します。 パネルの左端が 0 です。 gridx のデフォルトは nil です。 nil を指定すると、直前に追加したGUI部品の gridwidth の値により以下のような振る舞いをします。
|
||||||||||||||||||||
| 'gridy' |
GUI部品を配置するY方向の位置(行位置)を整数で指定します。 パネルの上端が 0 です。 gridy のデフォルトは nil です。 nil を指定すると、直前に追加したGUI部品と同じ行を表します。 ただし、直前に追加したGUI部品の gridwidth が nil のときは、その下の行を表します。 |
||||||||||||||||||||
| 'gridwidth' |
GUI部品を配置する幅(X方向の大きさ。列の数)を整数で指定します。 2 以上の値を指定すると、複数列に渡って配置します。 デフォルトは 1 です。 整数の代わりに nil を指定すると、この行の残りすべての列を指定したことになります。 |
||||||||||||||||||||
| 'gridheight' |
GUI部品を配置する高さ(Y方向の大きさ。行の数)を整数で指定します。 2 以上の値を指定すると、複数行に渡って配置します。 デフォルトは 1 です。 整数の代わりに nil を指定すると、この列の残りすべての行を指定したことになります。 |
||||||||||||||||||||
| 'top' |
GUI部品の周囲に隙間をあけるときに、その上側の隙間を整数で指定します。単位はピクセルです。 デフォルトは 0 です。 |
||||||||||||||||||||
| 'left' |
GUI部品の周囲に隙間をあけるときに、その左側の隙間を整数で指定します。単位はピクセルです。 デフォルトは 0 です。 |
||||||||||||||||||||
| 'bottom' |
GUI部品の周囲に隙間をあけるときに、その下側の隙間を整数で指定します。単位はピクセルです。 デフォルトは 0 です。 |
||||||||||||||||||||
| 'right' |
GUI部品の周囲に隙間をあけるときに、その右側の隙間を整数で指定します。単位はピクセルです。 デフォルトは 0 です。 |
||||||||||||||||||||
| 'ipadx' |
GUI部品のサイズを、ここで指定した数だけ左右に広げます。 単位はピクセルで、右と左にそれぞれこのサイズ分が広がるので、実際のGUI部品のサイズは、指定した値の2倍のピクセル増えます。 デフォルトは 0 です。 |
||||||||||||||||||||
| 'ipady' |
GUI部品のサイズを、ここで指定した数だけ上下に広げます。 単位はピクセルで、上と下にそれぞれこのサイズ分が広がるので、実際のGUI部品のサイズは、指定した値の2倍のピクセル増えます。 デフォルトは 0 です。 |
||||||||||||||||||||
| 'fill' |
GUI部品の面積よりもパネルのほうが広いときに、パネルの面積に合わせてGUI部品を大きくするかどうかを指定します。 以下の文字列の中から指定してください。
YKLook 内部では英字の先頭の1文字だけを見ています。 デフォルトは nil です。 fill の値によっては、 weightx,weighty の値も検討が必要です。 |
||||||||||||||||||||
| 'anchor' |
GUI部品の大きさをパネルの大きさに合わせて広げないときに、余った空間とGUI部品との位置関係を指定します。 以下の文字列の中からGUI部品の位置を指定してください。
デフォルトは nil で、 'c' と同じです。 |
||||||||||||||||||||
| 'weightx' |
ウインドウ・フレームのマウスドラッグ等で、アプリ利用者の画面操作によりパネルの面積が広くなった場合に、その広がった面積をパネル内の各GUI部品に分配するときの割合を指定します。 weightx は、同じ行にあるGUI部品がそれぞれ持っている weightx と関連します。 例えば同じ行に3個の部品があり、 weightx の値がどれも 1 のときパネルが広くなったら、そのぶんの面積は3個の部品に均等に分配されます。中央の部品の weightx が 2 のときは、両端の部品に比べて割り当て量が2倍になります。 weightx の値は整数でも実数でもよく、値自体に絶対的な意味はありません。同じ行の他のGUI部品の値との相対的なものです。 weightx のデフォルトの値は 0 で、この値を持つGUI部品の面積はパネルが広くなっても変わりません。 例えばパネル内のすべてのGUI部品の weightx が 0 のとき、パネルが広くなってもそれぞれの部品は変化せず、部品間の隙間が広くなります。 fill の値によっては、 weightx の値も検討が必要です。 |
||||||||||||||||||||
| 'weighty' |
ウインドウ・フレームのマウスドラッグ等で、アプリ利用者の画面操作によりパネルの面積が広くなった場合に、その広がった面積をパネル内の各GUI部品に分配するときの割合を指定します。 weighty は、同じ列にあるGUI部品がそれぞれ持っている weighty と関連します。 例えば同じ列に3個の部品があり、 weighty の値がどれも 1 のときパネルが広くなったら、そのぶんの面積は3個の部品に均等に分配されます。中央の部品の weighty が 2 のときは、両端の部品に比べて割り当て量が2倍になります。 weighty の値は整数でも実数でもよく、値自体に絶対的な意味はありません。同じ列の他のGUI部品の値との相対的なものです。 weighty のデフォルトの値は 0 で、この値を持つGUI部品の面積はパネルが広くなっても変わりません。 例えばパネル内のすべてのGUI部品の weighty が 0 のとき、パネルが広くなってもそれぞれの部品は変化せず、部品間の隙間が広くなります。 fill の値によっては、 weighty の値も検討が必要です。 |
| 例 |
btn1 = YKLookButton.new( 'button 1' )
btn2 = YKLookButton.new( 'button 2' )
hash = { 'gridx' => 0 }
pan = YKLookPanelGridBag.new()
pan.yk_add( btn1, hash )
pan.yk_add( btn2, hash )
|
yk_add( gui , rect ) yk_add( gui , rect , fill ) yk_add( gui , rect , fill , geom ) yk_add( gui , rect , fill , geom , anchor ) YKLookComponent クラスから派生しているすべてのクラスのオブジェクトです。 yk_add( gui , hash ) の説明をご覧ください。| 例 | btn1 = YKLookButton.new( 'button 1' ) btn2 = YKLookButton.new( 'button 2' ) rect = [0, nil] pan = YKLookPanelGridBag.new() pan.yk_add( btn1, rect ) pan.yk_add( btn2, rect ) |
| 例 | btn1 = YKLookButton.new( 'button 1' ) btn2 = YKLookButton.new( 'button 2' ) pan = YKLookPanelGridBag.new() pan.yk_add( btn1, [0,0,1,1] ) pan.yk_add( btn2, [0,1,1,1] ) |
| 例 | pf1 = YKLookPanelFlow.new() pf2 = YKLookPanelFlow.new() pf3 = YKLookPanelFlow.new() pan = YKLookPanelGridBag.new() pan.yk_add( pf1, [0,0,1,2] ) # 左端、1列分の幅と2行分の高さ pan.yk_add( pf2, [1,0,1,1] ) # 右側、1列分の幅と1行分の高さ pan.yk_add( pf3, [1,1,1,1] ) # 右側、1列分の幅と1行分の高さ |
yk_add( gui , hash ) の説明をご覧ください。 yk_add( gui , hash ) の説明をご覧ください。 yk_add( gui , hash ) の説明をご覧ください。 yk_set_border() yk_set_border( border ) yk_set_border( border , title ) | その他の項目 |
| ページ内リンク一覧 スーパークラス クラスメソッド インスタンスメソッド その他の項目 |
| YKLook説明書 > クラス解説 > YKLookPanelGridBag | 機能別 ABC |