Python3-python-gui-programming
Python 3-GUIプログラミング(Tkinter)
Pythonは、グラフィカルユーザーインターフェイス(GUI)を開発するためのさまざまなオプションを提供します。 最も重要な機能を以下にリストします。
- Tkinter -Tkinterは、Pythonに付属のTk GUIツールキットへのPythonインターフェイスです。 この章では、このオプションを検討します。
- wxPython -これはwxWidgets GUIツールキット用のオープンソースPythonインターフェイスです。 WxPython https://www.finddevguides.com/wxpython/index [こちら]で完全なチュートリアルを見つけることができます。
- PyQt -これは、一般的なクロスプラットフォームQt GUIライブラリのPythonインターフェイスでもあります。 finddevguidesには、PyQt https://www.finddevguides.com/pyqt/index [こちら]に非常に優れたチュートリアルがあります。
- JPython -JPythonはJava用のPythonポートであり、Pythonスクリプトがローカルマシンhttp://www.jython.orgのJavaクラスライブラリにシームレスにアクセスできるようにします。
他にも多くのインターフェースが利用可能ですが、それらはネット上で見つけることができます。
Tkinterプログラミング
TkinterはPythonの標準GUIライブラリです。 PythonをTkinterと組み合わせると、GUIアプリケーションをすばやく簡単に作成できます。 Tkinterは、Tk GUIツールキットへの強力なオブジェクト指向インターフェースを提供します。
Tkinterを使用してGUIアプリケーションを作成するのは簡単です。 あなたがする必要があるのは、次の手順を実行することです-
- _Tkinter_モジュールをインポートします。
- GUIアプリケーションのメインウィンドウを作成します。
- 上記のウィジェットの1つ以上をGUIアプリケーションに追加します。
- メインイベントループに入り、ユーザーによってトリガーされた各イベントに対してアクションを実行します。
例
#!/usr/bin/python3
import tkinter # note that module name has changed from Tkinter in Python 2 to tkinter in Python 3
top = tkinter.Tk()
# Code to add widgets will go here...
top.mainloop()
これは、次のウィンドウを作成します-
Tkinterウィジェット
Tkinterは、GUIアプリケーションで使用されるボタン、ラベル、テキストボックスなどのさまざまなコントロールを提供します。 これらのコントロールは一般にウィジェットと呼ばれます。
Tkinterには現在15種類のウィジェットがあります。 これらのウィジェットと、次の表に簡単な説明を示します-
Sr.No. | Operator & Description |
---|---|
1 |
Buttonウィジェットは、アプリケーションでボタンを表示するために使用されます。 |
2 |
Canvasウィジェットは、アプリケーションで線、楕円、多角形、長方形などの形状を描くために使用されます。 |
3 |
Checkbuttonウィジェットは、多くのオプションをチェックボックスとして表示するために使用されます。 ユーザーは一度に複数のオプションを選択できます。 |
4 |
入力ウィジェットは、ユーザーから値を受け取るための単一行のテキストフィールドを表示するために使用されます。 |
5 |
フレームウィジェットは、他のウィジェットを整理するためのコンテナウィジェットとして使用されます。 |
6 |
ラベルウィジェットは、他のウィジェットに単一行のキャプションを提供するために使用されます。 画像を含めることもできます。 |
7 |
リストボックスウィジェットは、ユーザーにオプションのリストを提供するために使用されます。 |
8 |
Menubuttonウィジェットは、アプリケーションでメニューを表示するために使用されます。 |
9 |
メニューウィジェットは、ユーザーにさまざまなコマンドを提供するために使用されます。 これらのコマンドは、メニューボタン内に含まれています。 |
10 |
メッセージウィジェットは、ユーザーから値を受け取るための複数行のテキストフィールドを表示するために使用されます。 |
11 |
ラジオボタンウィジェットは、ラジオボタンとして多数のオプションを表示するために使用されます。 ユーザーは一度に1つのオプションのみを選択できます。 |
12 |
スケールウィジェットは、スライダーウィジェットを提供するために使用されます。 |
13 |
Scrollbarウィジェットは、リストボックスなどのさまざまなウィジェットにスクロール機能を追加するために使用されます。 |
14 |
テキストウィジェットは、テキストを複数行で表示するために使用されます。 |
15 |
トップレベルウィジェットは、個別のウィンドウコンテナを提供するために使用されます。 |
16 |
Spinboxウィジェットは、標準のTkinterエントリウィジェットのバリアントであり、固定数の値から選択するために使用できます。 |
17 |
PanedWindowは、水平または垂直に配置された任意の数のペインを含むことができるコンテナウィジェットです。 |
18 |
ラベルフレームは、単純なコンテナウィジェットです。 その主な目的は、複雑なウィンドウレイアウトのスペーサーまたはコンテナとして機能することです。 |
19 |
このモジュールは、アプリケーションでメッセージボックスを表示するために使用されます。 |
標準属性
サイズ、色、フォントなどの一般的な属性の指定方法を見てみましょう。
- リンク:/python3/tk_dimensions [寸法]
- リンク:/python3/tk_colors [色]
- リンク:/python3/tk_fonts [フォント]
- リンク:/python3/tk_anchors [アンカー]
- リンク:/python3/tk_relief [レリーフスタイル]
- リンク:/python3/tk_bitmaps [ビットマップ]
- リンク:/python3/tk_cursors [カーソル]
ジオメトリ管理
すべてのTkinterウィジェットは、特定のジオメトリ管理メソッドにアクセスできます。これには、親ウィジェットエリア全体にウィジェットを整理する目的があります。 Tkinterは、pack、grid、およびplaceのジオメトリマネージャークラスを公開します。
- link:/python3/tk_pack [The pack()メソッド]-このジオメトリマネージャは、ウィジェットを親ウィジェットに配置する前に、ブロックに編成します。
- link:/python3/tk_grid [The grid()メソッド]-このジオメトリマネージャーは、親ウィジェット内のテーブルのような構造でウィジェットを整理します。
- link:/python3/tk_place [place()メソッド]-このジオメトリマネージャは、ウィジェットを親ウィジェット内の特定の位置に配置することでウィジェットを整理します。