[簡単1行]ダイアログでメッセージを表示する方法[Python]

スポンサードリンク
アイキャッチ Python
過去の自分
過去の自分

Pythonでの処理が終了したことをわかりやすくするために
ダイアログでメッセージを表示したい!

今の自分
今の自分

「ダイアログメッセージを表示させる方法」
「ダイアログの選択で分岐させる方法」
「ダイアログからキーボード入力を受け取る方法」
をできるだけわかりやすく解説いたします!

【著者情報】
Python歴3年。
入社2年目の春に先輩が突然トンズラし、業務を半分肩代わりするハメに…。
今までの1.5倍の仕事をこなせるはずもなく、苦しむ毎日。
業務効率化を模索中にPythonと出合う。
業務とPythonの相性が良く、2倍以上の効率化を実現。現在も効率化を進行中。

スポンサードリンク

Pythonでダイアログを表示させるには

「pyautogui」「alert」を使います。まずは実行見本をどうぞ。

実行見本

実行見本

全コード

ひとまず全コードを網羅します。解説は後ほど行います。

import pyautogui

pyautogui.alert('処理が終了しました')

事前準備

  • pyautoguiのインストール

ダイアログを表示するには「pyautogui」のインストールが必要です。

pyautoguiのインストール方法

pyautoguiを初めて使用する場合は、下記コードを入力・実行して、インストールしてください。

pip install pyautogui

※pyautoguiを使用したことがある場合は、このインストール作業は不要です。

解説:ダイアログメッセージを表示する

※わかりやすさを重視しております。厳密には解釈が異なる場合がありますことをご了承ください。

インポート

ダイアログを表示させるには、「pyautogui」のインポートが必要です。

import pyautogui

まずは上記一文を記述して、「pyautogui」をインポートしましょう。

メッセージをダイアログで表示

pyautogui.alert('処理が終了しました')

上記一文にて、メッセージをダイアログで表示させることができます。

()内に表示させたいメッセージを記述してください。

【 pyautogui.alert(‘表示させたいメッセージ’) 】

変数をメッセージとして表示させることもできます。

message = 12345
pyautogui.alert(message)
見本
スポンサードリンク

ダイアログの選択で分岐させる

前項のダイアログは「OK」ボタンのみでした。
今回は「OK」と「キャンセル」、2つのボタン付きのダイアログを表示してみましょう。

import pyautogui

result = pyautogui.confirm('本日の日付で処理しますか?')

【 変数 = pyautogui.confirm(‘表示させたいメッセージ’) 】

実行してみます。

見本

「OK」と「キャンセル」ボタン付きのダイアログを表示することができました。

【「OK」を押した場合】
変数「result」に「OK」という文字列が入る

【「キャンセル」を押した場合】
変数「result」に「Cancel」という文字列が入る

今回はダイアログを表示させただけでしたが、
「OK」ボタンを押した時の処理と「キャンセル」ボタンを押した時とで
処理を分岐させることができます(後ほど解説いたします)

スポンサードリンク

ダイアログからキーボード入力を受け取る

入力欄付きのダイアログを表示し、キーボード入力した値を受け取ることもできます。

import pyautogui

result = pyautogui.prompt('日付を入力してください。')

【 変数 = pyautogui.prompt(‘表示させたいメッセージ’) 】

実行してみます。

見本

入力欄付きのダイアログを表示できました。

【何かを入力して「OK」を押した場合】
入力した文字列が変数「result」に入る

【「キャンセル」を押した場合】
「None」が変数「result」に入る
※「None」は文字列ではないので注意

【何も入力せず「OK」を押した場合】
「空欄」が「result」に入る

スポンサードリンク

簡単な実践例

今回の集大成といえる実践例を紹介いたします。
少し長いですが、ほぼ解説済の内容ですので、ゆっくり見ていってください。

import pyautogui
import datetime

today = datetime.datetime.now().strftime('%m%d')

result = pyautogui.confirm('本日の日付で処理しますか?')

if result == 'OK' :
    date = today
    pyautogui.alert(date+'付けで処理しました')
else :
    date = pyautogui.prompt('日付を入力してください。例:0417')
    if date == None or date == '' :
        pyautogui.alert('日付が入力されていません。')
    else :
        pyautogui.alert(date+'付けで処理しました')

実行見本が下図です。

見本

【解説】
1つ目のダイアログで「キャンセル」が押された場合、入力欄付きダイアログを表示させます。
2つ目のダイアログで「入力欄が空欄」もしくは「キャンセル」が押された場合、「日付が入力されていません」を表示させています。

全てダイアログを表示させるだけでしたが、それぞれに処理を追加することで、別々の日付で処理をさせることができます。

スポンサードリンク

最後に

Pythonでダイアログメッセージを表示させる方法を解説いたしました。

処理終了がわかりやすくなる他、分岐させたりすることもできますので、ぜひご活用ください。

当ブログでは、Pythonに関する情報を配信しております。
この記事がわかりやすいと感じた方は、他の記事も読んでいってください。

最後までお読みいただき、ありがとうございました。がんばってください!

タイトルとURLをコピーしました