今回はTkinter(ティーケーインター)とは何か、そしてその使い方についてご紹介させていただきます。
Tkinterは簡単にGUIを作成することができるPythonライブラリです。
Pythonを知らない方は、以下の記事で詳しく説明しているので、まずはこちらからどうぞ!
GUIとは、「Graphical User Interface」の頭文字をとったもので、「操作できる画面」のことを指します。
Tkinterを利用することにより、データ入力やボタンのある画面を簡単に作成でき、そこから Python スクリプトを実行することができます。
これからPythonの勉強をしたい人や、独自のGUIを作成したい人に向けて初心者の人でもわかるようにTkinterの基礎から解説していきたいと思います。
興味のある方は是非ご覧になってください。
Table of Contents
「Tkinter」とはなにか?
TkinterとはPython3でGUIアプリケーションを開発するための標準ライブラリです。
Windows、Linux、およびmacOSなどの主要なプラットフォーム上で動作し、Pythonの標準ライブラリに含まれるため、PythonをインストールするだけでTkinterを利用することができます。
Tkinterを利用することで、ウィンドウ・ボタン・テキストボックス・ラベル・ラジオボタン・チェックボックスなどのGUIアプリケーションを作成するための多くのウィジェットを簡単に作成することができます。
「Tkinter」を使うメリット
処理が軽い
GUIアプリケーションは他のアプリケーションと違い、処理が重くなりがちです。
理由としては、CUIと違ってボタンやウィンドウを描画する必要があるからです。
Tkinterは起動の速度が速く、処理速度についても十分な速度で操作することが可能です。
標準ライブラリのためインストール不要
先ほども述べましたが、TkinterはPythonの標準ライブラリであるため、インストールが不要です。
Pythonをインストールしたパソコンであれば、環境構築を一切しなくても開発することが可能です。
また、Tkinterで作成したプログラムはクロスプラットフォームで動作可能なため、WindowsやMacという縛りなく使用できるのが魅力的な点です。
コードがシンプルである
Tkinterの魅力的な点として、コードがシンプルでわかりやすいということが挙げられます。
他のGUIアプリケーションはどれも少し複雑なコードを書きますが、Tkinterは本当にシンプルです。
プログラミング初心者の方でも、わかりやすいコードとなっています。
「Tkinter」を実際に使ってみた
試しに以下のコードを実行してみてください。
import tkinter
window = tkinter.Tk() # TKオブジェクトを起動
window.title('Tkinterテスト') # GUIアプリのタイトルを指定
window.geometry('500x500') # 表示画面サイズ(幅x高さ)
window.mainloop()
上のコードを説明します。
まず、window = tkinter.Tk() 、window.title(‘Tkinterテスト’) 、window.geometry(‘500×500’)
のコードによって、tkinterのオブジェクトを生成し、GUIアプリのタイトルを「Tkinterテスト」と指定、表示画面サイズは、500×500と指定しました。
上記のコードを実行すと以下のような画面が生成されます。
次に、この画面にボタンを設置してみましょう。
以下のコードを追記してみましょう。(追記する場所は、tki.mainroop()の上)
#ボタンの作成
btn = tkinter.Button(window, text='ボタン') # ボタンの設定(text=ボタンに表示するテキスト)
btn.place(x=100, y=100) #ボタンを配置する位置の設定
btn = tkinter.Button(window, text=’ボタン’) によって、ボタンという文字を指定して、ボタンの設定をします。
btn.place(x=100, y=100) #ボタンを配置する位置の設定、この場合x=100,y=100の場所にボタンを配置します。
上記のコードの結果、以下の画面が出力されます。
まとめ
今回は、Tkinterを用いたGUIの作成方法についてご紹介させていただきました。
GUIの作成ツールでも比較的簡単なライブラリです。ぜひ記事を参考にしてください。
今回ご紹介したPythonのライブラリTkinter以外に、おすすめのPythonモジュールであるSeleniumに関しても以下の記事にまとめています。
興味のある方は是非ご覧ください。