【Tkinterシリーズ 08/15】ウィジェット(ラジオボタン、スケール)

20. ウィジェットRadiobutton

ラジオ ボタンは、ユーザーが一連のオプションのうち 1 つだけを選択できるようにする一連の関連ウィジェットです。各ラジオ ボタンはインジケーターラベルで構成されます。

  • 選択した項目内で赤く変化するひし形の部分がインジケーターです。

  • ラベルはテキストですが、画像ビットマップをラベルとして使用できます

  • このインジケーターは必要に応じて省略できます。これにより、ラジオ ボタンが「プッシュ-プッシュ」ボタンのように見え、選択したエントリが凹んで表示され、残りのエントリが盛り上がって表示されます。

  • 複数のラジオ ボタンを機能グループにグループ化するには、制御変数を作成し (後述のセクション 52「制御変数: ウィジェットの背後 にある値」を参照)、各ラジオ ボタンのオプションをその変数に設定します。variable

    制御変数は OR にすることができます。2 つ以上のラジオ ボタンが同じ制御変数を共有している場合、いずれかを設定するともう一方がクリアされます。IntVarStringVar

  • グループ内の各ラジオ ボタンには、コントロールと同じタイプの一意のオプション変数が必要です。たとえば、3 つのラジオ ボタンのグループが 1 つを共有し、0、1、99 を持つ場合があります。あるいは、制御変数を使用して、 、 、 などのラジオ ボタンのオプションを提供することもできます。valueIntVarStringVarvalue'too hot''too cold''just right'

次の名前のルート ウィンドウまたはフレームの子として、新しいラジオ ボタン ウィジェットを作成します。parent

  w = tk.Radiobutton(parent, option, ...)

このコンストラクターは新しいウィジェットを返します。オプション:Radiobutton

表 29.单选按钮ウィジェットのオプション

activebackground ラジオボタンの上にマウスを置きます。セクション5.3「色」を参照してください。
activeforeground マウスがラジオ ボタンの上にあるときの前景色。
anchor ウィジェットが配置されるスペースが必要以上に大きい場合、このオプションはそのスペース内でラジオ ボタンを配置する場所を指定します。デフォルト値は です。他の配置オプションについては、「アンカーポイント」を参照してください。たとえば、設定すると、ラジオ ボタンが利用可能なスペースの右上隅に配置されます。anchor=tk.CENTERanchor=tk.NE
bgまたはbackground インジケーターの後ろの通常の背景 とラベル。
bitmap ラジオボタンにモノクロ画像を表示するには、このオプションをビットマップに設定します ( 「ビットマップ」を参照)。
bdまたはborderwidth インジケーターセクション自体の周囲の境界線のサイズ。デフォルトは 5 ピクセルです。可能な値については、セクション 1.<>「寸法」を参照してください。
command ユーザーがこのラジオ ボタンの状態を変更するたびに呼び出されるプロシージャ。
compound テキストとグラフィックス (ビットマップまたはイメージ) の両方が指定されている場合、このオプションはテキストを基準にしてグラフィックスが表示される場所を指定します。可能な値は (デフォルト)、、、、、および です。たとえば、グラフィックをテキストの下に配置します。指定した場合、グラフィックスは表示されますが、(存在する場合) は表示されません。tk.NONEtk.TOPtk.BOTTOMtk.LEFTtk.RIGHTtk.CENTERcompound=tk.BOTTOMcompound=tk.NONEtext
cursor このオプションがカーソル名に設定されている場合 (セクション5.8「カーソル」を参照)、マウス カーソルがラジオ ボタン上にあると、そのモードに変わります。
disabledforeground 無効になっているラジオ ボタンをレンダリングするために使用されます。デフォルトは、デフォルトの前景色の点線バージョンです。
font 使用するフォント。セクション5.4「タイプフォント」を参照してください。text
fgまたはforeground レンダリングに使用する 。text
height ラジオ ボタンのテキストの行数 (ピクセルではありません) 。デフォルト値は 1 です。
highlightbackground フォーカスのないラジオ ボタンのフォーカスの色。セクション 53「フォーカス: キーボード入力のルーティング」を参照してください。
highlightcolor  ラジオ ボタンにフォーカスがある場合の強調表示。
highlightthickness 焦点の太さが強調されます。デフォルト値は です。フォーカスの強調表示を抑制するように設定します。1highlightthickness=0
image テキスト ラジオ ボタンの代わりにグラフィック イメージを表示するには、このオプションをイメージ オブジェクトに設定します。セクション5.9「画像」を参照してください。ラジオ ボタンが選択されていない場合の画像が表示されます 。以下を比較してください。selectimage
indicatoron 通常、ラジオ ボタンにはインジケーターが表示されます。このオプションをゼロに設定すると、インジケーターが消え、ウィジェット全体が盛り上がった「プッシュ-プッシュ」ボタンになり、クリアされると表示され、設定されると沈みます。このような状態コントロールを見やすくするために、この値を大きくするとよいでしょう。borderwidth
justify このオプションは、テキストに複数の行が含まれる場合に、テキストの配置を制御します: (デフォルト)、、、、または。texttk.CENTERtk.LEFTtk.RIGHT
offrelief インジケーターがアサートによって抑制されている場合、このオプションは、ラジオ ボタンが選択されていないときに表示されるエンボス スタイルを指定します。デフォルト値は です。indicatoron=Falseoffrelieftk.RAISED
overrelief エンボス マウスを指定した場合にラジオボタンに表示されるスタイル。
padx ラジオボタンとテキストのために左右にどれだけのスペースを残すか。デフォルト値は 1 です。
pady ラジオ ボタンとテキストの上下に残すスペースの量。デフォルト値は 1 です。
relief デフォルトでは、ラジオ ボタンにはエンボスが付いているため、背景から飛び出すことはありません。3D 効果のオプションの詳細については、セクション 5.6「エンボス スタイル」を参照してください 。を使用することもできます。これにより、ラジオ ボタンの周囲に黒い枠が表示されます。tk.FLATrelief=tk.SOLID
selectcolor カラー設定 時のラジオボタン。デフォルトは赤です。
selectimage ラジオ ボタンがオフになっているときにテキストの代わりにグラフィックを表示するオプションを使用している場合は、ラジオ ボタンが設定されているときに表示される別の画像にオプションを設定できます。セクション5.9「画像」を参照してください。imageselectimage
state デフォルトは次のとおりですが、コントロールをグレー表示にして応答しなくすることもできます。カーソルが現在ラジオ ボタンの上にある場合、状態は [はい] になります。state=tk.NORMALstate=tk.DISABLEDtk.ACTIVE
takefocus デフォルトでは、入力フォーカス (セクション 53「フォーカス: キーボード入力のルーティング」を参照) はラジオ ボタンを通過します。設定すると、このラジオ ボタンにフォーカスが移動しなくなります。takefocus=0
text ラジオボタンの横に表示されるラベル。複数行のテキストを表示するには、改行 () を使用します。'\n'
textvariable 実行中にラジオ ボタンのラベルを変更する必要がある場合は、現在の値を管理するための を作成し ( 「制御変数: ウィジェットの背後にある値」を参照)、このオプションを制御変数として設定します。制御変数の値が変更されると、ラジオ ボタンのコメントも自動的にこのテキストに変更されます。StringVar
underline デフォルト値の -1 では、テキスト ラベルのない文字に下線が付きます。テキスト内の文字のインデックス (0 から数えて) を使用してその文字に下線を付けるには、このオプションを設定します。
value ユーザーがラジオ ボタンをオンに切り替えると、その制御変数が現在の選択に設定されます。制御変数が 1 つの場合、ラジオ ボタンごとに異なる整数オプションをグループ化します。制御変数が の場合、各ラジオ ボタンの異なる文字列オプション。valueIntVarvalueStringVarvalue
variable このラジオ ボタンで共有される制御変数は、グループ内の他のラジオ ボタンとともに使用されます ( 「制御変数: ウィジェットの背後にある値」を参照)。これは 1 つまたは 1 つです。IntVarStringVar
width ラジオ ボタンのデフォルトの幅は、表示される画像またはテキストのサイズによって決まります。このオプションを文字数 (ピクセルではなく) に設定すると、ラジオ ボタンには常にその数のスペース文字が含まれます。
wraplength 通常、行は折り返されません。このオプションを文字数に設定すると、すべての行がこの数を超えない断片に分割されます。

ラジオ ボタン オブジェクトのメソッドには次のものがあります。

.deselect()

ラジオボタンをクリア(オフ)します。

.flash()

ラジオ ボタンをアクティブな色と通常の色の間で数回点滅させますが、最初はそのままにしておきます。

.invoke()

このメソッドを呼び出して、ユーザーがラジオ ボタンをクリックして状態を変更したかどうかに関する情報を取得できます。

.select()

ラジオボタンを設定(オン)します。

21.「ズーム」ウィジェット (anzeljg.github.io)

21. ウィジェットScale

スケール ウィジェットの目的は、ユーザーが範囲を指定できるようにすることです。以下に、水平方向と垂直方向の 2 つのスケール ウィジェットを示します。intfloat

每个刻度显示一个滑块,该滑块 用户可以沿着低谷拖动到 更改值。在图中,第一个滑块是 目前为 -0.38,第二个为 7。

  • 您可以使用鼠标将滑块拖动到新值 按钮 1.

  • 如果单击槽中的按钮 1,滑块将 每次单击沿该方向移动一个增量。 按住低谷中的按钮 1 将在 延迟,开始自动重复其功能。

  • 如果秤有键盘 焦点,向左箭头和向上箭头击键将 向上移动滑块(对于垂直缩放)或向左移动(对于 水平刻度)。向右箭头和向下箭头 击键将向下或向右移动滑块。

创建新的缩放构件作为根窗口的子窗口 或名为 :parent

    w = tk.Scale(parent, option, ...)

构造函数返回新小部件。选项:Scale

表 30.缩放微件选项

activebackground 鼠标悬停在滑块上时滑块的颜色。 请参见第 5.3 节 “颜色”。
bgbackground 小部件中位于 槽。
bdborderwidth 槽周围的 3-D 边框的宽度和 滑 块。默认值为 5 像素。对于可接受的 值,请参见第 1.<> 节 “维度”。
command 每次滑块 搬。此过程将传递一个参数, 新的比例值。如果滑块被移动 很快,您可能不会收到每个回电 可能的位置,但你肯定会得到一个 结算时的回调。
cursor 鼠标悬停在 规模。请参见第 5.8 节 “游标”。
digits 程序读取当前值的方式 比例小部件是通过控制变量;请参见第 52 节 “控制变量:小部件背后的值”。的控制变量 刻度可以是 、 (表示类型) 或 。如果是字符串变量, 该选项控制多少 转换数字小数位数值时要使用的数字 到字符串。IntVarDoubleVarfloatStringVardigits
font 用于标签和批注的字体。请参见第 5.4 节 “键入字体”。
fgforeground 文本的颜色 用于标签和批注。
from_ 定义 刻度的范围。对于垂直刻度,这是顶部 结束;对于水平刻度,为左端。底杆 () 不是拼写错误:因为是 Python 中的保留字,此选项 拼写为 .默认值为 0.0。 请参阅下面的选项,了解其他选项 范围的结束。float_fromfrom_to
highlightbackground 颜色 当刻度没有焦点时,焦点会突出显示。 请参见第 53 节 “焦点:路由键盘输入”。
highlightcolor 颜色 焦点突出显示 当刻度具有焦点时。
highlightthickness 焦点的厚度 突出显示。默认值为 1。设置为禁止显示 的焦点突出显示。highlightthickness=0
label 您可以通过以下方式在比例微件中显示标签 将此选项设置为标签的文本。标签 如果比例为 水平,如果垂直,则为右上角。 默认值为无标签。
length 比例微件的长度。如果比例为 水平,如果垂直,则为 y 维。默认值为 100 像素。为 允许的值,请参见第 5.1 节 “尺寸”。
orient 如果需要,请设置 缩放以沿 X 维度运行,或运行 平行于 y 轴。 默认值为垂直。orient=tk.HORIZONTALorient=tk.VERTICAL
relief 默认情况下,将 比例并没有从其背景中脱颖而出。你 也可用于获得 刻度周围的纯黑框,或任何 第 5.6 节 “浮雕样式”中描述的其他浮雕类型。relief=tk.FLATrelief=tk.SOLID
repeatdelay 此选项控制按钮 1 的长度 在滑块启动之前按住低谷 反复朝那个方向移动。默认值为 ,单位为 毫秒。repeatdelay=300
repeatinterval 此选项控制滑块跳转的频率 一旦按钮 1 在槽中按住 至少毫秒。 例如,每 100 毫秒跳转一次滑块。repeatdelayrepeatinterval=100
resolution 通常,用户只能更改 按整单位缩放。将此选项设置为一些 其他值以更改 比例的值。例如,如果和 ,和 您设置,比例 将有 5 个可能的值:-1.0、-0.5、0.0、+0.5、 和 +1.0。所有较小的移动都将被忽略。 用于禁用任何 值的舍入。from_=-1.0to=1.0resolution=0.5resolution=-1
showvalue 通常,刻度的当前值为 滑块以文本形式显示(在其上方为 水平刻度,向左表示垂直 鳞片)。将此选项设置为 0 可禁止显示 标签。
sliderlength 通常滑块沿长度为 30 像素 的规模。您可以通过以下方式更改该长度 将选项设置为 您想要的长度;请参见第 5.1 节 “尺寸”。sliderlength
sliderrelief 默认情况下,滑块以浮雕样式显示。对于其他救济 样式,将此选项设置为任何值 在第 5.6 节 “浮雕样式”中描述。tk.RAISED
state 通常,秤小部件响应鼠标事件, 当他们有焦点时,还有键盘事件。 设置为使 小部件无响应。state=tk.DISABLED
takefocus 通常,焦点将在缩放中循环 部件。如果不需要,请将此选项设置为 0 此行为。请参见第 53 节 “焦点:路由键盘输入”。
tickinterval 通常,不会显示“即时报价” 沿着规模。要显示周期性刻度值, 将此选项设置为一个数字,刻度将是 以该值的倍数显示。例如 如果 和 ,标签将 沿刻度以值 0.0、0.25 显示, 0.50、0.75 和 1.00。这些标签如下所示 如果为水平,则为比例,如果为垂直,则为左侧。 默认值为 0,表示禁止显示即时报价。from_=0.0to=1.0tickinterval=0.25
to 定义 刻度范围;另一端由选项定义,如上所述。该值可以大于或小于 比值。对于垂直 刻度,值定义底部 规模;对于水平刻度,右端。这 默认值为 100.0。floatfrom_tofrom_to
troughcolor 颜色 槽。
variable このスケールの制御変数 (存在する場合)。セクション 52「制御変数: ウィジェットの背後にある値」を参照してください。制御変数は、クラス、(型の場合)、または からのものです。後者の場合、数値は文字列に変換されます。以下の詳細については、上記のオプションを参照してください。この変換。IntVarDoubleVarfloatStringVardigits
width ウィジェットのスロット部分の幅。これは、垂直スケールの x 次元と y 次元 (スケールにスケールがある場合) です。デフォルトは 15 ピクセルです。orient=tk.HORIZONTAL

スケール オブジェクトには次のメソッドがあります。

.coords(value=None)

指定されたスケール値に対応する、ウィジェットの隅の左上隅を基準とした相対座標を返します。の場合、スライダーの中心が現在位置している座標を取得します。スケールの値が特定の値に設定されている場合は、スライダーの位置を見つけて使用します。value=Nonexvalue=x

.get()

このメソッドは、ティックの現在の値を返します。

.identify(xy)

ウィジェットの左上隅を基準とした相対座標のペアを指定すると、このメソッドは、その位置にどのウィジェットの機能部分があるかを識別する文字列を返します。戻り値は次のいずれかになります。(xy)

'slider' スライダー。
'trough1' 水平スケールの場合はスライダーの上、垂直スケールの場合はスライダーの上。
'trough2' 水平スケールの場合はスライダーの下、垂直スケールの場合はスライダーの下。
'' 上記のセクションのいずれにも含まれない役職。(xy)

.set(value)

スケールの値を設定します。

おすすめ

転載: blog.csdn.net/gongdiwudu/article/details/132580426