チェックボタン(CheckButton)

チェックボタンは選択/非選択で変数に異なる値を与えるボタンです.

Ruby/TkではTkCheckButtonクラスが相当します.

代表的な使用例を示します.

#!/usr/local/bin/ruby

require 'tk'

var = TkVariable.new('')
w1 = TkCheckButton.new(nil, 
		       'text' => '「将棋バカの」を付け足す ',
		       'onvalue' => '将棋バカの',
		       'offvalue' => '',
		       'variable' => var
		      )
w1.pack('side' => 'top', 'fill' => 'both')

w2 = TkButton.new(nil, 'text' => 'My name',
		  'command' => proc{print var.value + "梶山タカシ です.\n"})
w2.pack('side' => 'top', 'fill' => 'both')
w3 = TkButton.new(nil, 'text' => 'quit',
		  'command' => proc{exit})
w3.pack('side' => 'top', 'fill' => 'both')

Tk.mainloop
上記のプログラムを走らせると,最初下のようになります.

このとき,チェックボタンをクリックすると,下のようになります.

ここで,"My name"のボタンをマウスの左ボタンでクリックすると,実行させたプロンプトに以下のような出力がなされるはずです.

TkCheckButtonクラスのインスタンス変数を以下に示します.

インスタンス変数(抄)
インスタンス変数名 役割
activebackground マウスが乗っているときの背景色.
activeforeground マウスが乗っているときの前景色.
background 背景色.
foreground 前景色.
disabledforeground disabled状態のときの前景色.
anchor 配置場所.'n','e','s','w','center'等で指定.
bitmap 表示するbitmap.TkBitmapImageオブジェクトで指定.
image 表示するimage.TkPhotoImageオブジェクトで指定.
text 表示する文字列.
textvariable 表示する文字列変数.TkVariableオブジェクトで指定.
justify 文字列をよせる側."left","center","right"で指定.
borderwidth 枠の幅.整数値で指定.
cursor マウスカーソルの形.
highlightcolor ウィジェットにフォーカスがある時の枠の色.
highlightthickness ウィジェットにフォーカスがある時の枠の幅.
relief ウィジェットの凹凸.'raised'または'sunken'で指定.
wraplength 折り畳むときの1行の文字数.
command 実行するコマンドを記述します.proc{x}とすることで,rubyコマンドxを呼び出せます.このコマンドは,チェックボタンを重ねたマウスの左ボタンを離す時に実行されます.
height ウィジェットの高さ.
width ウィジェットの幅.
state ボタンの状態です.'normal','active'または'disabled'で指定します.'disabled'にすると,ボタンが反応しません.
onvalue ボタンがonになっている時のチェックボタンに対する値.
offvalue ボタンがoffになっている時のチェックボタンに対する値.
variable チェックボタンに対する値を格納する変数名.TkVariableオブジェクトで指定します.

戻る