Ruby-tk-checkbutton
Ruby/TK-チェックボタンウィジェット
説明
*Checkbutton* は通常のボタンに似ていますが、コマンドコールバックを呼び出すだけでなく、何らかの種類のバイナリ値(トグル)を保持できることを除いて、ユーザーはそれを押すことができます。 チェックボタンは、ユーザーがオプションの2つの異なる値のいずれかを選択するように求められるときに常に使用されます。
チェックボタンは、テキスト文字列、ビットマップまたは画像を表示できます。 テキストが表示される場合は、すべて単一のフォントである必要がありますが、画面上で複数行を占めることができます(改行が含まれている場合、または_wraplength_オプションのために折り返しが発生する場合)。オプション。
チェックボタンには、以下を含む単純なボタンのすべての動作があります。状態オプションに応じて、3つの異なる方法のいずれかで自身を表示できます。隆起した、沈んだ、または平らに見えるようにすることができます。フラッシュさせることができます。また、チェックボタン上でマウスボタン1がクリックされるたびにTclコマンドを呼び出します。
構文
このウィジェットを作成する簡単な構文は次のとおりです-
TkCheckButton.new(root) {
.....Standard Options....
.....Widget-specific Options....
}
標準オプション
- アクティブ
- アクティブ
- アンカー
- バックグラウンド
- ビットマップ
- ボーダー幅
- 化合物
- カーソル
- 無効
- font
- 前景
- ハイライト
- ハイライトカラー
- ハイライト
- 画像
- 正当化する
- padx
- pady
- 安心
- フォーカス
- text
- テキスト変数
- 下線を引く *ラップ長
これらのオプションは前の章で説明されています。
ウィジェット固有のオプション
Sr.No. | Options & Description |
---|---|
1 |
ボタンに関連付けるRubyコマンドを指定します。 通常、このコマンドは、マウスボタン1がボタンウィンドウ上で放されたときに呼び出されます。 ここでは、マウスクリックに対して実行されるRubyメソッドを関連付けることができます。 コマンドオプションを使用して呼び出すことができる組み込み関数-
|
2 |
ボタンの高さを指定します。 |
3 |
インジケーターを描画するかどうかを指定します。 適切なブール値でなければなりません。 _false_の場合、_relief_オプションは無視され、ウィジェットが選択されている場合はウィジェットのレリーフが常に沈んでおり、そうでない場合は上げられています。 |
4 |
このボタンの選択が解除されるたびに、ボタンの関連変数に格納する値を指定します。 デフォルトは0です。 |
5 |
このボタンが選択されるたびに、ボタンの関連変数に保存する値を指定します。 デフォルトは1です。 |
6 |
ボタンが選択されたときに使用する背景色を指定します。 _indicatoron_がtrueの場合、色はインジケーターに適用されます。 _indicatoron_がfalseの場合、この色は、ウィジェットが選択されるたびに、_background_または_activebackground_の代わりに、ウィジェット全体の背景として使用されます。 |
7 |
チェックボタンが選択されたときに表示する(画像オプションの代わりに)画像を指定します。 imageオプションが指定されていない限り、このオプションは無視されます。 |
8 |
ボタンの3つの状態、_normal、active、またはdisabled_のいずれかを指定します。 通常の状態では、ボタンは_foreground_および_background_オプションを使用して表示されます。 アクティブ状態は通常、ポインターがボタン上にあるときに使用されます。 アクティブ状態では、_activeforeground_および_activebackground_オプションを使用してボタンが表示されます。 無効状態とは、ボタンを区別しないことを意味します。 |
9 |
このボタンが選択されているかどうかを示すために設定するグローバル変数の名前を指定します。 デフォルトは、親内のボタンの名前です。 |
10 |
ボタンの幅を指定します。 |
イベントバインディング
Ruby/Tkは、チェックボタンのクラスバインディングを自動的に作成し、次のデフォルトの動作を提供します-
- チェックボタンは、マウスが通過するたびにアクティブになり、マウスがチェックボタンを離れるたびに非アクティブになります。
- マウスボタン1がチェックボタン上で押されると、そのボタンが呼び出されます(選択状態が切り替わり、ボタンに関連付けられているコマンドがあれば、そのコマンドが呼び出されます)。
- チェックボタンに入力フォーカスがある場合、スペースキーによりチェックボタンが呼び出されます。
チェックボタンの状態が「無効」の場合、上記のアクションは発生しません。チェックボタンは完全に応答しません。
例
require 'tk'
root = TkRoot.new
root.title = "Window"
CkhButton1 = TkCheckButton.new(root) do
text "Orange"
indicatoron "true"
background "red"
relief "groove"
height 2
width 2
onvalue 'Orange'
place('height' => 25,'width' => 100, 'x' => 10, 'y'=> 10)
command (select)
end
CkhButton2 = TkCheckButton.new(root) do
text "Banana"
background "red"
relief "groove"
height 2
width 2
onvalue 'Banana'
place('height' => 25,'width' => 100, 'x' => 10, 'y'=> 40)
end
Tk.mainloop
これは、次の結果を生成します-