技術系

Tkinterを使ったGUIアプリの作り方【第1回】

どうも。ガジェット好きエンジニアのひろです。

以下の記事でライブラリ選定方法を説明しました。

まだご覧になられていない方はご覧になって頂けると幸いです。

今回は私が使用したライブラリTkinterを用いて具体的な流れ、コード解説を何回かに分けてご説明していきます。

 

動作環境とインストールについて

環境

マシンスペック

 

エディタ:VScode

言語:Python3.7.4

ライブラリ:Tkinter 8.5

インストール

Pythonのバージョンに合わせて対応しているTkinterをインストールしてください。

Tkinterのインストールはcondaコマンドでインストールした方が良いと思います。

Pipコマンドでインストールしたときはインストールはできても実際に使うときにエラー出てきてつけなかったので、

をターミナルで入力してください。

モジュールがどのような機能を持っているか理解する。

今回はTkinterというGUIのライブラリを使用していきます。

まずは、公式ドキュメントでどのようなライブラリなのか把握していきましょう。

公式ドキュメント

じっくり読まなくて平気です。流し読み程度で大丈夫なので一度目を通しておきましょう。

その中で自分が実現したいモジュールがあるかどうかGoogle先生に尋ねていきましょう!

基本的な画面表示

以下が画面を表示する際に必要なコードになります。

 

実行結果は以下のようになります。

コード解説

この実装は背景色が白の550x600のウィンドウを表示させるだけのコードになります。

まず初めにTkinterをインポートしてライブラリを使用できるようにします。

ウィンドウ名設定

今回rootという変数にtkinter.Tkを代入していますが代入せずに直書きでも動作はします。

何をいっているのかというとウィンドウ名を設定しているtitleメソッドですが直で書くと

のようになります。ですがこの先tkinterのメソッドを使うときに毎回tkinter.Tk()と書くのは面倒ですし、後からコードを見返したときに見にくいですよね?

そういった意味で重複する記載は一度変数に代入してしまった方がメンテナンスするときも楽になります。

これはプログラミングでの基本となるので何回も書くようなコードは変数に代入しておきましょう。

ウィンドウの大きさを設定

ウィンドウの大きさ(広さ)を設定するモジュールはgeometry()になります。

こちらの()内に表示したい大きさを入力することで任意の大きさにすることができます。

僕はまず高さをどのくらいするか決めてから横幅をいい感じに微調整して行っています。

もし画面表示設計で大きさを決めるときにいい方法を知っている方がいらっしゃいましたら教えて頂きたいです。

mainloop()について

Tkinterは部品を追加して行ったら最後にmainloopを実行することが決まりとしてあります。

これがないと画面が描画されないことやボタンを押してからの処理を書いていたとしても実行されません。

特にエラーは出ていないのに画面が表示されないなどの場合はmainloopメソッドを読んでいないことがあるので確認しましょう。

Tkinterを使うときはmainloopを一番最後に必ず呼んであげましょう。

画面表示の仕方のまとめ

Tkinterを使った画面表示の仕方のまとめです。

同じ記述する可能性がある場合は変数に代入しておく。

title()メソッドでウィンドウのタイトル名を設定する。

geometry()メソッドで画面の大きさ(広さ)を設定する。

Tkinterを使うときは必ず最後にmainloop()メソッドを呼び出す。

今回は画面表示について記事にしました。

この画面の中にボタンやプルダウンなどのパーツを配置していきGUIアプリを作成していきます。

簡単にGUIアプリを作成できるので一度Tkinterを用いてGUIアプリを作成してみてはいかがでしょうか?

ここまで読んでくださりありがとうございました。

合わせて読みたい記事

技術系

2021/4/29

おうち時間を有効に使って充実した生活を送るための説明書

みなさんお久しぶりです。 現在Webエンジニアとして働いています、ひろです。 ここ最近モバイルの技術を見つけたくてFlutterでアプリ開発しております。みなさんは最近新しいことに挑戦できてますか? 突然ですが、みなさんはおうち時間をどのようにお過ごしでしょうか? コロナ禍で在宅での仕事が増えたり、何かとオンラインで物事を進めたりするうちに自宅にいる時間が増えたと思います。そんな中、おうち時間をどのようにして過ごすか悩んでいる方を時々見かけます。 おうち時間について悩みを抱えている方の中には以下のようなも ...

ReadMore

2021/4/21

副業にメリット・デメリットとは?理解を深めて上手に副業しよう!

みなさんお久しぶりです。 現在フルスタックエンジニアとして働いています、ひろです。 最近はマイクロサービスの基盤構築の企画からリリース対応まで担当して少しだけスキルアップしました! さて、最近副業が当たり前になってきていますが、みなさんは副業を行う上でメリットやデメリットを考えて副業をしていますか?この記事では副業のメリット・デメリットについて解説していきたいと思います。 副業のメリット・デメリットと聞くとどのようなことを考えますか? 僕はみなさんの中で以下のような悩みがあると思います。 副業をする上での ...

ReadMore

2021/3/1

副業の始め方を理解して自分にあった副業を始めてみよう!

みなさんお久しぶりです。 現在Webエンジニアとして働いています、ひろです。 今年に入ってアパレルブランドを再度立ち上げました笑 気になる方は以下のこちらから遊びに来てもらえると嬉しいです! 突然ですが、皆さんは副業を初めてみたいと思ったことはありませんか? 副業を始めたいと思っている方の中には以下の悩みがあると思います。 副業の始め方がわからない 本業に時間を取られていて時間がない 確定申告の仕組みがいまいちわからない(別記事で紹介します!) 副業したいと思ってもなかなか手を出せない方もいると思います。 ...

ReadMore

 

日常ノウハウ

2020/5/16

初対面でも雑談ができる?簡単なコツさえ掴めばだれてもできる!

どうも。ガジェット好き組み込みエンジニアのひろです。 皆さんは初対面の方と雑談するのは得意でしょうか? 僕はあまり得意ではありません。 ですがちょっとしたコツを掴むことで長い時間雑談することができるようになりました。 このツイートでコツを簡単に説明しましたが詳しく解説します! / 初対面の人と話すときはその人の好きなもの、得意なものを聞き出し深掘りして行こう❗️ \ 僕は初対面の人と会った時は、その人が好きな事を聞き出します! その話について小さなことでも気になった事は質問することで相手は自分の好き事を話 ...

ReadMore

2019/12/24

私流効率的なノートの使い方

どうも。ひろです。 最近ふとしたことをiPhoneのメモに残すのが日課になってきています。 皆さんはメモとノートの違いについてわかりますか? 今回はメモとノートの違いについてお話ししていき、 私流のノートの活用の仕方を記事にします。 目次0.1 メモとノートの違い1 メモ2 ノート3 結論3.1 ノートの活用方法4 1冊にまとめる5 日付を記入する6 空き時間で読み返す6.1 まとめ メモとノートの違い まずはメモとノートの違いについて説明します。 外観的な違いとして、大きさがありますがもう少し中身的な違 ...

ReadMore

2019/12/24

【社会人目前の方必見】私が感じる学生と社会人の大きな違い

どうも、ひろです。 大学4年生の方は時間がたくさんあり、社会人になる前にやりたいことをやっているという感じでしょうか? 私の大学4年生の思い出は理系だったので卒業研究の論文の1次提出があり、 とても焦っていた記憶があります。 卒論出した後は卒業旅行の計画であったりプログラミングの勉強をしていました。 社会人になる直前って不安がたくさんありますよね? 私も起きれるかどうか、ちゃんと仕事できるのか、 自由な時間はあるのかと不安でいっぱいでした。 今回は社会人目前の大学生に向けて社会人と学生の違いを記事にしてい ...

ReadMore

-技術系
-, , , , ,

S