Python
 Computer >> コンピューター >  >> プログラミング >> Python

Tkinterでポップアップウィンドウを作成する方法|messageboxの使い方を解説

Tkinterには、アプリケーションの内部機能を拡張するために活用できる、数多くの組み込み関数や機能が用意されています。Tkinterでポップアップを作成するには、messagebox(メッセージボックス)を定義します。メッセージボックスを扱う前に、まず次のコマンドでmessageboxパッケージをインポートしておく必要があります。

import tkinter.messagebox

サンプルコード

この例では、質問形式のメッセージボックスによるポップアップを作成します。ユーザーが表示された選択肢をクリックすると、その回答に応じてそれぞれの処理へと分岐します。

# 必要なライブラリをインポート
from tkinter import *
import tkinter.messagebox

# Tkinterフレームのインスタンスを作成
win = Tk()

# フレームのサイズを設定
win.geometry("700x350")

def open_win():
    out = tkinter.messagebox.askquestion('Prompt', 'Do you want to Continue?')
    if out == 'yes':
        Label(win, text="Thank You for your Response!", font=('Helvetica 22 bold')).pack(pady=40)
    else:
        win.destroy()

# ボタンを作成
button = Button(win, text="Click Me", command=open_win, font=('Helvetica 14 bold'), foreground='OrangeRed3', background="white")
button.pack(pady=50)
win.mainloop()

実行結果

上記のコードを実行すると、まず次のようなウィンドウが表示されます。

Tkinterでポップアップウィンドウを作成する方法|messageboxの使い方を解説

続いて、「Click Me」ボタンをクリックすると、質問内容を含むメッセージボックスがポップアップで表示されます。

Tkinterでポップアップウィンドウを作成する方法|messageboxの使い方を解説

さらに、このメッセージボックスで「Yes」ボタンをクリックすると、感謝のメッセージが表示された次のウィンドウに切り替わります。「No」を選択した場合はウィンドウが閉じられます。

Tkinterでポップアップウィンドウを作成する方法|messageboxの使い方を解説

  1. Tkinterで自動更新されるGUIを作成する方法|リアルタイム時計アプリの実装例

    Tkinterを使用すると、自動的に更新されるよう設定できるGUIアプリケーションを簡単に構築できます。この記事では、時刻が変わるたびに自動的にリフレッシュされるGUIベースのデジタル時計を作成します。時計の時刻に加えて、曜日やタイムゾーンもあわせて表示します。 まずtkinterライブラリをインポートし、次に「strftime」関数を使って現在の時刻や曜日の情報を取得する関数を作成します。 コード例 # tkinterライブラリをインポート from tkinter import * import time # ウィンドウのインスタンスを作成 win = Tk() # ウィンドウのタイ

  2. tkinterでウィンドウを閉じる方法|destroy()メソッドの使い方を解説

    tkinterを使えば、Pythonで手軽にGUIアプリケーションを作成できます。しかし、タイトルバー右上の×ボタン以外の方法でウィンドウやフレームを閉じたい場合、どのように実装すればよいか悩むこともあるでしょう。そのようなときに役立つのが、ウィンドウを破棄して閉じるための .destroy() メソッドです。tkinterの各ウィジェットや属性は互いに独立しているため、「ウィンドウを閉じる処理」を専用の関数として分離して定義できます。これにより、ボタンのクリックイベントからウィンドウを閉じる動作を自由に制御可能です。サンプルコード# ライブラリをインポート from tkinter impo