Python3-python-gui-programming

提供:Dev Guides
移動先:案内検索

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()

これは、次のウィンドウを作成します-

TK Window

Tkinterウィジェット

Tkinterは、GUIアプリケーションで使用されるボタン、ラベル、テキストボックスなどのさまざまなコントロールを提供します。 これらのコントロールは一般にウィジェットと呼ばれます。

Tkinterには現在15種類のウィジェットがあります。 これらのウィジェットと、次の表に簡単な説明を示します-

Sr.No. Operator & Description
1

Button

Buttonウィジェットは、アプリケーションでボタンを表示するために使用されます。

2

Canvas

Canvasウィジェットは、アプリケーションで線、楕円、多角形、長方形などの形状を描くために使用されます。

3

Checkbutton

Checkbuttonウィジェットは、多くのオプションをチェックボックスとして表示するために使用されます。 ユーザーは一度に複数のオプションを選択できます。

4

Entry

入力ウィジェットは、ユーザーから値を受け取るための単一行のテキストフィールドを表示するために使用されます。

5

Frame

フレームウィジェットは、他のウィジェットを整理するためのコンテナウィジェットとして使用されます。

6

Label

ラベルウィジェットは、他のウィジェットに単一行のキャプションを提供するために使用されます。 画像を含めることもできます。

7

Listbox

リストボックスウィジェットは、ユーザーにオプションのリストを提供するために使用されます。

8

Menubutton

Menubuttonウィジェットは、アプリケーションでメニューを表示するために使用されます。

9

Menu

メニューウィジェットは、ユーザーにさまざまなコマンドを提供するために使用されます。 これらのコマンドは、メニューボタン内に含まれています。

10

Message

メッセージウィジェットは、ユーザーから値を受け取るための複数行のテキストフィールドを表示するために使用されます。

11

Radiobutton

ラジオボタンウィジェットは、ラジオボタンとして多数のオプションを表示するために使用されます。 ユーザーは一度に1つのオプションのみを選択できます。

12

Scale

スケールウィジェットは、スライダーウィジェットを提供するために使用されます。

13

Scrollbar

Scrollbarウィジェットは、リストボックスなどのさまざまなウィジェットにスクロール機能を追加するために使用されます。

14

Text

テキストウィジェットは、テキストを複数行で表示するために使用されます。

15

Toplevel

トップレベルウィジェットは、個別のウィンドウコンテナを提供するために使用されます。

16

Spinbox

Spinboxウィジェットは、標準のTkinterエントリウィジェットのバリアントであり、固定数の値から選択するために使用できます。

17

PanedWindow

PanedWindowは、水平または垂直に配置された任意の数のペインを含むことができるコンテナウィジェットです。

18

LabelFrame

ラベルフレームは、単純なコンテナウィジェットです。 その主な目的は、複雑なウィンドウレイアウトのスペーサーまたはコンテナとして機能することです。

19

tkMessageBox

このモジュールは、アプリケーションでメッセージボックスを表示するために使用されます。

標準属性

サイズ、色、フォントなどの一般的な属性の指定方法を見てみましょう。

  • リンク:/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()メソッド]-このジオメトリマネージャは、ウィジェットを親ウィジェット内の特定の位置に配置することでウィジェットを整理します。