木. 11月 21st, 2024

スキルシェアリング.info

さまざまな問題にITスキルで立ち向かうITソリューションブログ

【Python】ほんの数行のコードでクライアントツールの画面を作る方法

はじめに

どうもMizokeiです。
Pythonでプログラミングを勉強していると、画面を作ってみたいなと思うことがあるかもしれません。

今回は、簡単なクライアントツールの最初の一歩として画面を作るコードを書いてみたいと思います。実行環境は以下です。

実行環境

  • Windows10 64bit
  • Python 3.7

一瞬で画面の枠組みが作れる

まずは以下のコードを実行してみます。

すると…。

まっさらなウィンドウが表示されました。めちゃくちゃ簡単ですよね。

まっさらなウィンドウ

今回は、Pythonの標準ライブラリである、tkinterを使用しました。最新版のPython3.7をインストールした方は、特にpipなどを使用してインストールしなくとも、すでに環境は整っているかと思います。

以下のコードで、tkinterを初期化していますね。

そして、以下のコードで画面を表示、という具合です。

肉付けしてみる

これだけだと寂しいので、いくつかパーツを付けてみましょう。

パスワード確認ウィンドウ

パスワードを入力してOKかNOを判定する確認ツールを作ってみましょうか。

以下のコードを追加します。まずは、パスワードを確認することがわかるようにウィンドウにタイトルを設定しましょう。

それから、画面のサイズですね。ちょうど良さそうなサイズで設定しておきましょう。300×130という文字列を与えていますが、幅✕高さを意味しているので、値の記載に注意しましょう。

ここまでを実行すると…

いい感じですね。でもまだ、肝心の入力するテキストフィールドや、ボタンなどがありませんね。

タイトルとウィンドウサイズの設定

パーツを追加していく

パスワードを入力することをアナウンスするためのラベルを追加しましょうか。

ラベルを追加するコード

以下の2種類のコードで、ラベルの設定は完了します。

パスワード入力のためのテキストフィールドの追加

次に、パスワードを入力するためのテキストフィールドを追加しましょう。以下のコードを追加します。

パスワード確認用ボタンの追加

あとは、パスワードを確認を行わせるボタンの設定です。こちらも数行です。

判定結果確認用ボタンの追加

最後に判定結果を表示するためのラベルの設定をします。

ボタンを押したときの処理

入力させたパスワードの確認を行わせたいので、以下の2点の設定を追加します。

  • 正解のパスワード
  • パスワード確認後のラベル更新

正解のパスワードは当然ですね。これがないと、合っているのか間違っているのかわかりませんからね。2020年にちなんで、2020と設定してみます。

ボタンを押したときの処理を追記します。パスワードと一致すれば、「OK!」、間違っている場合には、「NO!」とラベルを更新します。

ボタンクリック時の処理に指定する

ただし、これだけだと、ボタンは反応しません。ボタンをクリックすると、パスワードの確認処理が走るように、ボタンの設定時のパラメータで、commandの値を、関数名check_passwordに設定します。これで、ボタンの連動が可能になります。

実行して確認する

実行して確認してみましょうか。起動時は「???」だったラベルが入力状態に応じて、「OK!」「NO!」に切り替わっていますね。

実行して起動した様子
誤ったパスワードを入力
正解を入力

以下、全量のコードです。コメントなどで説明を付けたことで、行数が増えていますが、コメント等を消すと数行で、簡単な画面を持つクライアントツールが作れちゃいました。

コメント無しバージョンです。これだけの短さでツールが作れるのは便利ですね。

この記事が誰かのお役に立てれば幸いです。それでは。