tkinter.tix — Tkの拡張ウィジェット—Pythonドキュメント

提供:Dev Guides
< PythonPython/docs/3.8/library/tkinter.tix
移動先:案内検索

tkinter.tix —Tkの拡張ウィジェット

ソースコード: :source: `Lib / tkinter / tix.py`

バージョン3.6以降非推奨:このTk拡張機能は保守されていないため、新しいコードでは使用しないでください。 代わりに tkinter.ttk を使用してください。



tkinter.tix (Tk Interface Extension)モジュールは、追加の豊富なウィジェットのセットを提供します。 標準のTkライブラリには多くの便利なウィジェットがありますが、それらは完全にはほど遠いものです。 tkinter.tix ライブラリは、標準のTkにはない一般的に必要なウィジェットのほとんどを提供します: HListComboBoxControl (別名 SpinBox)とスクロール可能なウィジェットの品揃え。 tkinter.tix には、 NoteBookFileEntryPanedWindow などの幅広いアプリケーションで一般的に役立つウィジェットも多数含まれています。 ; それらの40以上があります。

これらすべての新しいウィジェットを使用して、アプリケーションに新しい対話手法を導入し、より便利で直感的なユーザーインターフェイスを作成できます。 アプリケーションとユーザーの特別なニーズに合わせて最も適切なウィジェットを選択することにより、アプリケーションを設計できます。

も参照してください

Tixホームページ
Tixのホームページ。 これには、追加のドキュメントとダウンロードへのリンクが含まれます。
Tixのマニュアルページ
マニュアルページと参考資料のオンライン版。
Tixプログラミングガイド
プログラマーの参考資料のオンライン版。
Tix開発アプリケーション
TixおよびTkinterプログラムの開発のためのTixアプリケーション。 TideアプリケーションはTkまたはTkinterで動作し、Tix / Tk / Tkinterアプリケーションをリモートで変更およびデバッグするためのインスペクターである TixInspect が含まれています。


Tixの使用

class tkinter.tix.Tk(screenName=None, baseName=None, className='Tix')

主にアプリケーションのメインウィンドウを表すTixのトップレベルウィジェット。 Tclインタープリターが関連付けられています。

tkinter.tix モジュールのクラスは、 tkinter のクラスをサブクラス化します。 前者は後者をインポートするので、Tkinterで tkinter.tix を使用するには、1つのモジュールをインポートするだけです。 一般に、 tkinter.tix をインポートして、 tkinter.Tk へのトップレベルの呼び出しをtix.Tkに置き換えることができます。

from tkinter import tix
from tkinter.constants import *
root = tix.Tk()

tkinter.tix を使用するには、通常Tkウィジェットのインストールと一緒にTixウィジェットをインストールする必要があります。 インストールをテストするには、次のことを試してください。

from tkinter import tix
root = tix.Tk()
root.tk.eval('package require Tix')

Tixウィジェット

Tix は、40を超えるウィジェットクラスを tkinter レパートリーに導入します。

基本的なウィジェット

class tkinter.tix.Balloon
ヘルプを提供するためにウィジェットの上にポップアップするバルーン。 バルーンウィジェットがバインドされているウィジェット内でユーザーがカーソルを移動すると、説明メッセージを含む小さなポップアップウィンドウが画面に表示されます。
class tkinter.tix.ButtonBox
ButtonBox ウィジェットは、Ok Cancelで一般的に使用されるようなボタンのボックスを作成します。
class tkinter.tix.ComboBox
ComboBox ウィジェットは、MSWindowsのコンボボックスコントロールに似ています。 ユーザーは、エントリサブウィジェットを入力するか、リストボックスサブウィジェットから選択することにより、選択肢を選択できます。
class tkinter.tix.Control
Control ウィジェットはSpinBoxウィジェットとも呼ばれます。 ユーザーは、2つの矢印ボタンを押すか、エントリに直接値を入力することにより、値を調整できます。 新しい値は、ユーザー定義の上限と下限に対してチェックされます。
class tkinter.tix.LabelEntry
LabelEntry ウィジェットは、エントリーウィジェットとラベルを1つのメガウィジェットにパッケージ化します。 これは、「入力形式」タイプのインターフェースの作成を簡素化するために使用できます。
class tkinter.tix.LabelFrame
LabelFrame ウィジェットは、フレームウィジェットとラベルを1つのメガウィジェットにパッケージ化します。 LabelFrameウィジェット内にウィジェットを作成するには、frameサブウィジェットに関連する新しいウィジェットを作成し、frameサブウィジェット内でそれらを管理します。
class tkinter.tix.Meter
Meter ウィジェットは、実行に時間がかかる可能性のあるバックグラウンドジョブの進行状況を表示するために使用できます。
class tkinter.tix.OptionMenu
OptionMenu は、オプションのメニューボタンを作成します。
class tkinter.tix.PopupMenu
PopupMenu ウィジェットは、tk_popupコマンドの代わりに使用できます。 Tix PopupMenu ウィジェットの利点は、操作に必要なアプリケーションコードが少ないことです。
class tkinter.tix.Select
Select ウィジェットは、ボタンサブウィジェットのコンテナーです。 これは、ユーザーにラジオボックスまたはチェックボックススタイルの選択オプションを提供するために使用できます。
class tkinter.tix.StdButtonBox
StdButtonBox ウィジェットは、Motifのようなダイアログボックスの標準ボタンのグループです。


ファイルセレクター

class tkinter.tix.DirList
DirList ウィジェットは、ディレクトリ、その前のディレクトリ、およびそのサブディレクトリのリストビューを表示します。 ユーザーは、リストに表示されているディレクトリの1つを選択するか、別のディレクトリに変更できます。
class tkinter.tix.DirTree
DirTree ウィジェットは、ディレクトリ、その前のディレクトリ、およびそのサブディレクトリのツリービューを表示します。 ユーザーは、リストに表示されているディレクトリの1つを選択するか、別のディレクトリに変更できます。
class tkinter.tix.DirSelectDialog
DirSelectDialog ウィジェットは、ファイルシステム内のディレクトリをダイアログウィンドウに表示します。 ユーザーはこのダイアログウィンドウを使用してファイルシステム内を移動し、目的のディレクトリを選択できます。
class tkinter.tix.DirSelectBox
DirSelectBox は、標準のMotif(TM)ディレクトリ選択ボックスに似ています。 通常、ユーザーがディレクトリを選択するために使用されます。 DirSelectBoxは、最近選択されたディレクトリをComboBoxウィジェットに格納して、すばやく再度選択できるようにします。
class tkinter.tix.ExFileSelectBox
ExFileSelectBox ウィジェットは通常、tixExFileSelectDialogウィジェットに埋め込まれています。 これは、ユーザーがファイルを選択するための便利な方法を提供します。 ExFileSelectBox ウィジェットのスタイルは、MS Windows3.1の標準のファイルダイアログと非常によく似ています。
class tkinter.tix.FileSelectBox
FileSelectBox は、標準のMotif(TM)ファイル選択ボックスに似ています。 通常、ユーザーがファイルを選択するために使用されます。 FileSelectBoxは、最近選択されたファイルを ComboBox ウィジェットに保存して、すばやく再度選択できるようにします。
class tkinter.tix.FileEntry
FileEntry ウィジェットを使用して、ファイル名を入力できます。 ユーザーはファイル名を手動で入力できます。 または、エントリの横にあるボタンウィジェットを押すと、ファイル選択ダイアログが表示されます。


階層リストボックス

class tkinter.tix.HList
HList ウィジェットは、ファイルシステムディレクトリツリーなど、階層構造を持つ任意のデータを表示するために使用できます。 リストエントリは、階層内の位置に応じてインデントされ、分岐線で接続されます。
class tkinter.tix.CheckList
CheckList ウィジェットには、ユーザーが選択するアイテムのリストが表示されます。 チェックリストは、チェックボタンまたはラジオボタンよりもはるかに多くの項目を処理できることを除いて、Tkチェックボタンまたはラジオボタンウィジェットと同様に機能します。
class tkinter.tix.Tree
Tree ウィジェットを使用して、階層データをツリー形式で表示できます。 ユーザーは、ツリーの一部を開いたり閉じたりすることで、ツリーのビューを調整できます。


表形式のリストボックス

class tkinter.tix.TList
TList ウィジェットを使用して、データを表形式で表示できます。 TList ウィジェットのリストエントリは、Tkリストボックスウィジェットのエントリに似ています。 主な違いは、(1) TList ウィジェットがリストエントリを2次元形式で表示できること、および(2)リストエントリにグラフィカルイメージと複数の色およびフォントを使用できることです。


マネージャーウィジェット

class tkinter.tix.PanedWindow
PanedWindow ウィジェットを使用すると、ユーザーは複数のペインのサイズをインタラクティブに操作できます。 ペインは、垂直または水平に配置できます。 ユーザーは、2つのペイン間でサイズ変更ハンドルをドラッグして、ペインのサイズを変更します。
class tkinter.tix.ListNoteBook
ListNoteBook ウィジェットは、TixNoteBookウィジェットと非常によく似ています。ノートブックのメタファーを使用して、限られたスペースに多くのウィンドウを表示するために使用できます。 ノートブックはページのスタック(ウィンドウ)に分割されています。 一度に表示できるのは、これらのページの1つだけです。 ユーザーは、hlistサブウィジェットで目的のページの名前を選択することにより、これらのページをナビゲートできます。
class tkinter.tix.NoteBook
NoteBook ウィジェットは、ノートブックのメタファーを使用して、限られたスペースに多くのウィンドウを表示するために使用できます。 ノートブックはページのスタックに分割されています。 一度に表示できるのは、これらのページの1つだけです。 ユーザーは、NoteBookウィジェットの上部にある視覚的な「タブ」を選択することで、これらのページをナビゲートできます。


画像タイプ

tkinter.tix モジュールは以下を追加します。

  • XPMファイルからカラー画像を作成するためのすべての tkinter.tix および tkinter ウィジェットに対する pixmap 機能。
  • 化合物の画像タイプを使用して、複数の水平線で構成される画像を作成できます。 各行は、左から右に配置された一連のアイテム(テキスト、ビットマップ、画像、またはスペース)で構成されています。 たとえば、複合画像を使用して、Tk Buttonウィジェットでビットマップとテキスト文字列を同時に表示できます。


その他のウィジェット

class tkinter.tix.InputOnly
InputOnly ウィジェットは、ユーザーからの入力を受け入れるためのものであり、これはbindコマンド(Unixのみ)で実行できます。


フォームジオメトリマネージャー

さらに、 tkinter.tix は、以下を提供することによって tkinter を補強します。

class tkinter.tix.Form
すべてのTkウィジェットの添付ルールに基づく Form ジオメトリマネージャー。


Tixコマンド

class tkinter.tix.tixCommand

tixコマンドは、Tixの内部状態およびTixアプリケーションコンテキストのその他の要素へのアクセスを提供します。 これらのメソッドによって操作される情報のほとんどは、特定のウィンドウではなく、アプリケーション全体、または画面やディスプレイに関連しています。

現在の設定を表示するための一般的な使用法は次のとおりです。

from tkinter import tix
root = tix.Tk()
print(root.tix_configure())
tixCommand.tix_configure(cnf=None, **kw)
Tixアプリケーションコンテキストの構成オプションを照会または変更します。 オプションが指定されていない場合、使用可能なすべてのオプションの辞書を返します。 オプションが値なしで指定されている場合、メソッドは1つの名前付きオプションを説明するリストを返します(このリストは、オプションが指定されていない場合に返される値の対応するサブリストと同じになります)。 1つ以上のオプションと値のペアが指定されている場合、メソッドは指定されたオプションを変更して、指定された値を持ちます。 この場合、メソッドは空の文字列を返します。 オプションは、構成オプションのいずれかです。
tixCommand.tix_cget(option)
option で指定された構成オプションの現在の値を返します。 オプションは、構成オプションのいずれかです。
tixCommand.tix_getbitmap(name)
name.xpmまたはnameという名前のビットマップファイルをビットマップディレクトリの1つに配置します( tix_addbitmapdir()メソッドを参照)。 tix_getbitmap()を使用すると、アプリケーションでビットマップファイルのパス名をハードコーディングする必要がなくなります。 成功すると、ビットマップファイルの完全なパス名が返され、先頭に文字@が付けられます。 戻り値を使用して、TkおよびTixウィジェットのbitmapオプションを構成できます。
tixCommand.tix_addbitmapdir(directory)
Tixは、 tix_getimage()および tix_getbitmap()メソッドが画像ファイルを検索するディレクトリのリストを保持しています。 標準のビットマップディレクトリは$TIX_LIBRARY/bitmapsです。 tix_addbitmapdir()メソッドは、ディレクトリをこのリストに追加します。 このメソッドを使用すると、 tix_getimage()または tix_getbitmap()メソッドを使用してアプリケーションのイメージファイルを見つけることもできます。
tixCommand.tix_filedialog([dlgclass])
このアプリケーションからの異なる呼び出し間で共有される可能性のあるファイル選択ダイアログを返します。 このメソッドは、最初に呼び出されたときにファイル選択ダイアログウィジェットを作成します。 このダイアログは、 tix_filedialog()への後続のすべての呼び出しによって返されます。 オプションのdlgclassパラメーターを文字列として渡して、必要なファイル選択ダイアログウィジェットのタイプを指定できます。 可能なオプションは、tixFileSelectDialog、またはtixExFileSelectDialogです。
tixCommand.tix_getimage(self, name)
ビットマップディレクトリの1つでname.xpmname.xbm、またはname.ppmという名前のイメージファイルを検索します(上記の tix_addbitmapdir()メソッドを参照)。 同じ名前(ただし拡張子が異なる)のファイルが複数存在する場合は、Xディスプレイの奥行きに応じて画像タイプが選択されます。モノクロディスプレイではxbm画像が選択され、カラーディスプレイではカラー画像が選択されます。 tix_getimage()を使用すると、アプリケーションで画像ファイルのパス名をハードコーディングする必要がなくなります。 成功すると、このメソッドは新しく作成されたイメージの名前を返します。これを使用して、TkウィジェットとTixウィジェットのimageオプションを構成できます。
tixCommand.tix_option_get(name)
Tixスキームメカニズムによって維持されるオプションを取得します。
tixCommand.tix_resetoptions(newScheme, newFontSet[, newScmPrio])

Tixアプリケーションのスキームとフォントセットをそれぞれ newSchemenewFontSet にリセットします。 これは、この呼び出しの後に作成されたウィジェットにのみ影響します。 したがって、Tixアプリケーションでウィジェットを作成する前に、resetoptionsメソッドを呼び出すことをお勧めします。

オプションのパラメータ newScmPrio を指定して、Tixスキームによって設定されたTkオプションの優先度レベルをリセットできます。

TkがXオプションデータベースを処理する方法のため、Tixがインポートされて初期化された後は、tix_config()メソッドを使用して配色とフォントセットをリセットすることはできません。 代わりに、 tix_resetoptions()メソッドを使用する必要があります。