Help us understand the problem. What is going on with this article?

【Python】Tkinterを使ってGUIツールをつくってみた

More than 1 year has passed since last update.

どのプラットフォーム(OS)でも使えるということで、身の回りのツール類をPythonに移行しようと思ってる。
とはいえ、VBSなどで作ってるツールは入力画面などGUI使ったりもしている。
手始めに、PythonでGUI系ライブラリの使い方などについて備忘がてらまとめてみる。

なお、今回は以下のサイトを参考に進める。
Tkinter による GUI プログラミング

また、私はmacOSを使用しているので、動作確認等はmacOSで実施している。
※時間があれば、WindowsやLinuxなどでも動作検証させたいという思いはある

1.PythonのGUIライブラリ

GUIライブラリといってもたくさんある。
※情報ソース:Python、GUIライブラリの紹介

どれで試そうか迷った結果、 Tkinter でやることにした。
選んだ理由としては、

  1. よくPythonの参考書で見かけるから
  2. Pythonに標準で付属されているGUIライブラリだから

ただし、見た目が良くないなどのコメントも見るので、
後々他のライブラリも触ってみようかと思っている。
とりあえず今回は、Tkinter にしました。

2. Tkinterとは

Tkinter は Tk を Python から使うためのモジュール。
※Tkは、GUIを作成するためのツールキット
Tkinterは、Pythonの標準で付属されている。
Windows、macOS、Linuxなど様々なプラットフォーム上で利用することができる。

3. Tkinterの導入方法

Tkinterは、標準にPythonに付属されているので、Pythonさえ使える環境であれば使用できる。
※今回は、Pythonの導入方法までは触れない

私の使用しているPythonのVersion。

(env001) Hoge-MBA:bin Hoge$ python --version
Python 3.6.4

モジュールが含まれていることを確認。

(env001) Hoge-MBA:bin Hoge$ python
Python 3.6.4 (default, Jan  6 2018, 11:51:59) 
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 
>>> help('modules')

Please wait a moment while I gather a list of all available modules...

(中略)

_multibytecodec     csv                 parser              threading
_multiprocessing    ctypes              pathlib             time
_opcode             curses              pdb                 timeit
_operator           datetime            pickle              tkinter  <=== ★含まれている
_osx_support        dateutil            pickletools         token
_pickle             dbm                 pip                 tokenize

(中略)

_warnings           gzip                s3transfer          zlib
_weakref            hashlib             sched               

Enter any module name to get more help.  Or, type "modules spam" to search
for modules whose name or summary contain the string "spam".

>>> 
>>> 

念のため、ちゃんど動作するかも確認。

(env001) Hoge-MBA:bin Hoge$ python
Python 3.6.4 (default, Jan  6 2018, 11:51:59) 
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 
>>> import tkinter
>>> tkinter._test()
>>> 

実行すると以下が表示された。

スクリーンショット 2018-06-09 13.38.31.png

bft
情報インフラで社会を元気に
http://www.bfts.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした