tkapplication_gui プログラム仕様

Tkinter GUIアプリケーションの基底モジュール。

このモジュールは、tkApplication を継承し、Tkinterベースのグラフィカルユーザーインターフェース (GUI) アプリケーションを構築するための共通機能を提供します。 ウィンドウの作成、ジオメトリ管理、メニューやツールバーの構築、設定ダイアログの表示、 開発者向けデバッグ機能などが含まれます。

関連リンク: tkapplication_gui.py 技術ドキュメント

tklib.tkgui.tkapplication_gui.main()[ソース]

モジュールが直接実行された場合に呼び出される関数。

このモジュールがライブラリであることを示し、直接実行できないことを通知するメッセージを出力します。

class tklib.tkgui.tkapplication_gui.tkApplication_GUI(usage_str='', _globals=None, locals=None, use_user_inifile=False, **args)[ソース]

ベースクラス: tkApplication

Tkinter GUIアプリケーションの基底クラス。

このクラスは tkApplication を継承し、TkinterベースのGUIアプリケーションに特化した 機能を提供します。ウィンドウの管理、ウィジェット変数の操作、標準的なGUI要素 (メニュー、ツールバー、ペイン、ダイアログなど)の作成と操作をサポートします。

PanedWindow1(main_pane_args={})[ソース]

1つのペインを持つPanedWindowを作成する。

ルートウィンドウに単一のペインを持つ tkinter.PanedWindow を作成し、 それを self.main_pane に設定します。

パラメータ:

main_pane_args -- dict - tkinter.PanedWindow に渡す引数の辞書。

戻り値:

tkinter.PanedWindow - 作成されたPanedWindowウィジェット。

PanedWindow2(main_pane_args={}, left_pane_args={}, right_pane_args={})[ソース]

2つのペイン(左右)を持つPanedWindowを作成する。

ルートウィンドウに左右に分割された tkinter.PanedWindow を作成し、 それぞれのペインに tkinter.ttk.Notebook を配置します。 これらを self.main_pane, self.left_notebook, self.right_notebook に設定します。

パラメータ:
  • main_pane_args -- dict - メインPanedWindowに渡す引数の辞書。

  • left_pane_args -- dict - 左ペイン(Notebook)に渡す引数の辞書。

  • right_pane_args -- dict - 右ペイン(Notebook)に渡す引数の辞書。

戻り値:

list[tkinter.PanedWindow | tkinter.ttk.Notebook] - 作成された [メインペイン, 左ノートブック, 右ノートブック] のリスト。

add_root_panes(root=None, type='', sashwidth=2, left_pane_width=50)[ソース]

ルートウィンドウに指定されたタイプのペインを追加する。

'pane1' タイプの場合は単一のNotebook、'pane2' タイプの場合は左右に分割された PanedWindow(それぞれNotebookを含む)を作成します。

パラメータ:
  • root -- tkinter.Tk | None - ペインを追加するルートウィンドウ。Noneの場合は self.root_window

  • type -- str - 作成するペインのタイプ ('', 'pane1', 'pane2')。

  • sashwidth -- int - PanedWindowのサッシュ(仕切り)の幅。

  • left_pane_width -- int - 'pane2' タイプの場合の左ペインの幅。

戻り値:

list[tkinter.Widget] - 作成されたペインのリスト。

create_development_tab(config, cparams, parent_notebook, copy_tkvars=None)[ソース]

アプリケーションの開発者向けデバッグタブを作成する。

Pythonパス情報、各種設定パラメータ(app, cparams, tkvars, config, 環境変数、スクリプト変数)を表示・デバッグするためのボタン、 およびコードを実行できるエディタフレームを含むタブを作成します。

パラメータ:
  • app -- tkApplication_GUI - アプリケーションインスタンス。

  • config -- tklib.tkparams.tkParams - 設定オブジェクト。

  • cparams -- tklib.tkparams.tkParams - 設定パラメータオブジェクト。

  • parent_notebook -- tkinter.ttk.Notebook - タブを追加する親ノートブックウィジェット。

  • copy_tkvars -- callable | None - tkvars から cparamsconfig に値をコピーするためのコールバック関数。

戻り値:

tkinter.Frame - 作成された開発タブのフレーム。

create_editor_frame(frame, head_label_args={'text': 'Path:'}, entry_width=60, eval_button_args=[], show_path_select=True)[ソース]

ファイルパス選択とテキスト編集機能を備えたエディタフレームを作成する。

tktkinter.Editor ウィジェットを使用して、ファイルパス入力欄、パス選択ボタン、 テキストエリア、および実行ボタンを含むフレームを作成します。 実行ボタンにはデフォルトで evaluate 関数が割り当てられます。

パラメータ:
  • app -- tkApplication_GUI - アプリケーションインスタンス。

  • frame -- tkinter.Frame - エディタフレームを配置する親フレーム。

  • head_label_args -- dict - ヘッダーラベルに渡す引数の辞書。

  • entry_width -- int - エントリウィジェットの幅。

  • eval_button_args -- dict - 評価(実行)ボタンに渡す引数の辞書。

  • show_path_select -- bool - パス選択ウィジェットを表示するかどうか。

戻り値:

tktkinter.Editor - 作成されたエディタウィジェット(tktkinter.Editorクラスのインスタンス)。

create_editor_tab(config, cparams, pane, title, entry_width=60, eval_button_args={})[ソース]

ノートブックウィジェット内にエディタ機能を持つタブを作成する。

create_editor_frame を使用して、指定されたタイトルで新しいタブを作成し、 そこにエディタフレームを配置します。

パラメータ:
  • app -- tkApplication_GUI - アプリケーションインスタンス。

  • config -- tklib.tkparams.tkParams - 設定オブジェクト。

  • cparams -- tklib.tkparams.tkParams - 設定パラメータオブジェクト。

  • pane -- tkinter.ttk.Notebook - タブを追加するノートブックウィジェット。

  • title -- str - 作成するタブのタイトル。

  • entry_width -- int - エディタのエントリウィジェットの幅。

  • eval_button_args -- dict - 評価(実行)ボタンに渡す引数の辞書。

戻り値:

tktkinter.Editor - 作成されたエディタウィジェット(tktkinter.Editorクラスのインスタンス)。

create_menu(**kwargs)[ソース]

アプリケーションのメニューバーを作成する。

ルートウィンドウに tkinter.Menu を作成し、それをメニューバーとして設定します。

パラメータ:

kwargs -- dict - tkinter.Menu コンストラクタに渡すキーワード引数。

戻り値:

tkinter.Menu - 作成されたメニューバーウィジェット。

create_subwindow()[ソース]

新しいトップレベルのサブウィンドウを作成する。

親ウィンドウ self.root_window を持つ tkinter.Toplevel ウィンドウを作成します。

戻り値:

tkinter.Toplevel - 作成されたトップレベルウィンドウ。

create_toolbar(**kwargs)[ソース]

アプリケーションのツールバーを作成する。

ルートウィンドウの上部に配置される tkinter.Frame を作成し、 それをツールバーとして設定します。

パラメータ:

kwargs -- dict - tkinter.Frame コンストラクタに渡すキーワード引数。

戻り値:

tkinter.Frame - 作成されたツールバーウィジェット。

create_window(title=None, type='', geometry=None, minsize=None, iconfile=None, sashwidth=2, left_pane_width=50, icon_path=None, relief='ridge', borderwidth=2, bg='white', default_font=None)[ソース]

Tkinterのメインウィンドウ(ルートウィンドウ)を作成する。

ウィンドウのタイトル、ジオメトリ、最小サイズ、アイコン、ボーダーなどの外観を設定し、 WM_DELETE_WINDOW プロトコルハンドラを設定します。

パラメータ:
  • title -- str | None - ウィンドウのタイトル。

  • type -- str - ウィンドウのタイプ(現在のところ使用されていないが互換性のために残されている)。

  • geometry -- str | None - ウィンドウの初期ジオメトリ文字列(例: "800x600+100+50")。

  • minsize -- tuple[int, int] | None - ウィンドウの最小サイズ (幅, 高さ)。

  • iconfile -- str | None - ウィンドウアイコンファイルのパス。

  • sashwidth -- int - PanedWindowのサッシュ幅(関連するメソッドに渡されるが、このメソッド自体では使用されない)。

  • left_pane_width -- int - 左ペインの初期幅(関連するメソッドに渡されるが、このメソッド自体では使用されない)。

  • icon_path -- str | None - ウィンドウアイコンファイルのパス(iconfile と同様)。

  • relief -- str - ウィンドウの枠の種類(例: 'ridge', 'sunken', 'flat')。

  • borderwidth -- int - ウィンドウの枠の幅。

  • bg -- str - ウィンドウの背景色。

  • default_font -- tuple[str, int] | None - アプリケーション全体のデフォルトフォント (フォント名, サイズ)。

戻り値:

tkinter.Tk - 作成されたルートウィンドウ。

dialog_setup(title='Setup', parent=None, entry_width=30, button_width=4, edit_button_width=2, shell_button_width=0, widgets='editor_path|confirm_on_exit|debug_mode', font_size=10, is_print=False)[ソース]

アプリケーションの設定ダイアログを表示する。

tktkinter.tkSetupDialog を呼び出し、アプリケーションの設定項目を ユーザーが変更できるダイアログを生成します。

パラメータ:
  • title -- str - ダイアログのタイトル。

  • parent -- tkinter.Widget | None - ダイアログの親ウィジェット。Noneの場合はルートウィンドウ。

  • entry_width -- int - エントリウィジェットの幅。

  • button_width -- int - ボタンウィジェットの幅。

  • edit_button_width -- int - 編集ボタンの幅。

  • shell_button_width -- int - シェルボタンの幅。

  • widgets -- str - ダイアログに表示するウィジェットのキーを '|' で区切った文字列。

  • font_size -- int - ダイアログ内のフォントサイズ。

  • is_print -- bool - デバッグ情報を出力するかどうか。

get_editor()[ソース]

デフォルトのエディタのパスを取得する。

アプリケーションの設定 (configparams)、環境変数、および一般的なエディタのパスを検索して、 最初に見つかったエディタの実行可能ファイルのパスを返します。

戻り値:

str - エディタの実行可能ファイルのパス。見つからない場合は空文字列。

get_editors(additional_list=[], filename_only=False)[ソース]

システムで利用可能なエディタの実行可能ファイルのパスリストを取得する。

オペレーティングシステムに応じた一般的なエディタ、環境変数、および追加で指定されたエディタを検索し、 重複を排除して実行可能ファイルのパスを返します。

パラメータ:
  • additional_list -- list[str] - 検索対象に追加するエディタ名のリスト。

  • filename_only -- bool - ファイル名のみを返すかどうか。Trueの場合、パスではなく実行ファイル名のみを返します。

戻り値:

list[str] - 利用可能なエディタの実行可能ファイルのパスのリスト。

get_external_apps(paths, use_default=True, filename_only=False)[ソース]

外部アプリケーションの実行可能ファイルのパスリストを取得する。

指定されたパス、デフォルトの一般的なアプリケーション、および環境変数を検索し、 重複を排除して実行可能ファイルのパスを返します。use_defaultFalse にすると、 デフォルトのアプリケーションリストは含まれません。

パラメータ:
  • paths -- list[str] - 検索対象に追加するアプリケーション名のリスト。

  • use_default -- bool - デフォルトのアプリケーションリストを含めるかどうか。

  • filename_only -- bool - ファイル名のみを返すかどうか。Trueの場合、パスではなく実行ファイル名のみを返します。

戻り値:

list[str] - 外部アプリケーションの実行可能ファイルのパスのリスト。

get_filers(additional_list=[], filename_only=False)[ソース]

システムで利用可能なファイルマネージャ(ファイラ)の実行可能ファイルのパスリストを取得する。

オペレーティングシステムに応じた一般的なファイルマネージャ、および追加で指定された ファイルマネージャを検索し、重複を排除して実行可能ファイルのパスを返します。

パラメータ:
  • additional_list -- list[str] - 検索対象に追加するファイルマネージャ名のリスト。

  • filename_only -- bool - ファイル名のみを返すかどうか。Trueの場合、パスではなく実行ファイル名のみを返します。

戻り値:

list[str] - 利用可能なファイルマネージャの実行可能ファイルのパスのリスト。

get_geometry(window=None)[ソース]

ウィンドウのジオメトリ文字列と個別の値を取得する。

ウィンドウのジオメトリ(例: "WxH+X+Y")を解析し、幅、高さ、X座標、Y座標を返します。

パラメータ:

window -- tkinter.Tk | tkinter.Toplevel | None - ジオメトリを取得する対象ウィンドウ。Noneの場合はルートウィンドウ。

戻り値:

tuple[str, int, int, str | None, str | None] - ジオメトリ文字列、幅、高さ、X座標、Y座標。

get_screen_size()[ソース]

画面のサイズ(幅と高さ)を取得する。

戻り値:

tuple[int, int] - 画面の幅と高さ。

get_shells(additional_list=[], filename_only=False)[ソース]

システムで利用可能なシェル(コマンドプロンプト/ターミナル)の実行可能ファイルのパスリストを取得する。

オペレーティングシステムに応じた一般的なシェル、および追加で指定されたシェルを検索し、 重複を排除して実行可能ファイルのパスを返します。

パラメータ:
  • additional_list -- list[str] - 検索対象に追加するシェル名のリスト。

  • filename_only -- bool - ファイル名のみを返すかどうか。Trueの場合、パスではなく実行ファイル名のみを返します。

戻り値:

list[str] - 利用可能なシェルの実行可能ファイルのパスのリスト。

get_start_apps(additional_list=[], filename_only=False)[ソース]

ファイルを開くための「起動」アプリケーションの実行可能ファイルのパスリストを取得する。

オペレーティングシステムに応じた一般的なファイル起動コマンド、および追加で指定された アプリケーションを検索し、重複を排除して実行可能ファイルのパスを返します。

パラメータ:
  • additional_list -- list[str] - 検索対象に追加するアプリケーション名のリスト。

  • filename_only -- bool - ファイル名のみを返すかどうか。Trueの場合、パスではなく実行ファイル名のみを返します。

戻り値:

list[str] - ファイルを起動するためのアプリケーションの実行可能ファイルのパスのリスト。

get_tkvar(key, defval=None)[ソース]

指定されたキーのTkinterウィジェット変数の値を取得する。

キーが存在しない場合は、指定されたデフォルト値で初期化してから取得します。

パラメータ:
  • key -- str - 取得するウィジェット変数のキー。

  • defval -- Any | None - キーが存在しない場合に設定するデフォルト値。

戻り値:

Any - 指定されたキーのウィジェット変数オブジェクト。

get_tkvars_dict()[ソース]

Tkinterウィジェット変数を辞書形式で取得する。

self.tkvars オブジェクトが保持する全てのウィジェット変数を辞書として返します。

戻り値:

dict - Tkinterウィジェット変数の辞書。

mainloop()[ソース]

Tkinterイベントループを開始する。

アプリケーションのGUIがユーザーからの入力を待機し、イベントを処理するための メインループを開始します。

move_top(f=True)[ソース]

ウィンドウを最前面に移動するかどうかを設定する。

self.root_window"-topmost" 属性を変更して、ウィンドウが 他のウィンドウの上に表示されるように設定します。

パラメータ:

f -- bool - Trueの場合、ウィンドウを最前面に表示します。Falseの場合、通常の表示に戻します。

on_closing(do_confirm=None)[ソース]

ウィンドウが閉じられる際の処理を行う。

ウィンドウのジオメトリを保存し、確認ダイアログの表示有無に応じて アプリケーションを終了します。

パラメータ:

do_confirm -- bool | None - 終了時に確認ダイアログを表示するかどうか。Noneの場合は configparams の設定に従う。

print_config_info(config, tkvars, copy_tkvars=None)[ソース]

config オブジェクトの情報をコンソールに出力する。

config オブジェクトのパラメータを標準エラー出力に警告として表示します。 必要に応じて copy_tkvars コールバックを呼び出し、tkvars から config へ値をコピーします。

パラメータ:
  • app -- tkApplication_GUI - アプリケーションインスタンス。

  • config -- tklib.tkparams.tkParams - 設定オブジェクト。

  • tkvars -- tklib.tkparams.tkParams - Tkinterウィジェット変数を保持するオブジェクト。

  • copy_tkvars -- callable | None - tkvars から config に値をコピーするためのコールバック関数。

print_cparams_info(cparams, tkvars, copy_tkvars=None)[ソース]

cparams (設定パラメータ) の情報をコンソールに出力する。

cparams オブジェクトのパラメータを標準エラー出力に警告として表示します。 必要に応じて copy_tkvars コールバックを呼び出し、tkvars から cparams へ値をコピーします。

パラメータ:
  • app -- tkApplication_GUI - アプリケーションインスタンス。

  • cparams -- tklib.tkparams.tkParams - 設定パラメータオブジェクト。

  • tkvars -- tklib.tkparams.tkParams - Tkinterウィジェット変数を保持するオブジェクト。

  • copy_tkvars -- callable | None - tkvars から cparams に値をコピーするためのコールバック関数。

print_tkvars_info(cparams, tkvars)[ソース]

Tkinterウィジェット変数の情報をコンソールに出力する。

tkvars オブジェクト内の各変数について、そのキーと値を(可能であれば get() メソッドを使って) 標準エラー出力に警告として表示します。

パラメータ:
  • app -- tkApplication_GUI - アプリケーションインスタンス。

  • cparams -- tklib.tkparams.tkParams - 設定パラメータオブジェクト。

  • tkvars -- tklib.tkparams.tkParams - Tkinterウィジェット変数を保持するオブジェクト。

set_geometory(window=None, geo=None, w=None, h=None, x0=None, y0=None)[ソース]

ウィンドウのジオメトリを設定する。

ジオメトリ文字列、または幅、高さ、X座標、Y座標の組み合わせを用いて ウィンドウの位置とサイズを設定します。

パラメータ:
  • window -- tkinter.Tk | tkinter.Toplevel | None - ジオメトリを設定する対象ウィンドウ。Noneの場合はルートウィンドウ。

  • geo -- str | None - ジオメトリ文字列(例: "800x600+100+50")。指定された場合、他のパラメータは無視されます。

  • w -- int | None - ウィンドウの幅。

  • h -- int | None - ウィンドウの高さ。

  • x0 -- int | None - ウィンドウのX座標。

  • y0 -- int | None - ウィンドウのY座標。