Python-gui-programming
Python-GUIプログラミング(Tkinter)
Pythonは、グラフィカルユーザーインターフェイス(GUI)を開発するためのさまざまなオプションを提供します。 最も重要なものを以下にリストします。
- Tkinter -Tkinterは、Pythonに付属のTk GUIツールキットへのPythonインターフェイスです。 この章では、このオプションを検討します。
- wxPython -これはwxWindows [[1]]
- 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/python
import Tkinter
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 |
このモジュールは、アプリケーションでメッセージボックスを表示するために使用されます。 |
これらのウィジェットを詳細に調べてみましょう-
標準属性
サイズ、色、フォントなどの共通の属性がどのように指定されているかを見てみましょう。
- リンク:/python/tk_dimensions [寸法]
- リンク:/python/tk_colors [色]
- リンク:/python/tk_fonts [フォント]
- リンク:/python/tk_anchors [アンカー]
- リンク:/python/tk_relief [レリーフスタイル]
- リンク:/python/tk_bitmaps [ビットマップ]
- リンク:/python/tk_cursors [カーソル]
それらを簡単に研究しましょう-
ジオメトリ管理
すべてのTkinterウィジェットは、特定のジオメトリ管理メソッドにアクセスできます。これには、親ウィジェットエリア全体でウィジェットを整理する目的があります。 Tkinterは、pack、grid、およびplaceのジオメトリマネージャークラスを公開します。
- link:/python/tk_pack [The pack() Method]-このジオメトリマネージャーは、ウィジェットを親ウィジェットに配置する前にブロックに編成します。
- link:/python/tk_grid [The grid() Method]-このジオメトリマネージャは、ウィジェットを親ウィジェットのテーブルのような構造に編成します。
- link:/python/tk_place [The place() Method]-このジオメトリマネージャは、ウィジェットを親ウィジェット内の特定の位置に配置することでウィジェットを整理します。
ジオメトリ管理方法を簡単に研究しましょう-