Python | メッセージボックスの出し方

GUI App

Pythonでメッセージボックスを出す方法を説明する。

完成イメージ

ボタンをクリックするとメッセージボックスが出現する。

コード

メッセージボックスを使用する手順を示す。

  1. PyQt6からQMessageBoxをimportする。
  2. メッセージを出現させるメソッドを記述する。
  3. ボタンクリック時にそのメソッドが呼び出されるようにする。
#!/usr/bin/env python3

import sys
from PyQt6 import QtCore
from PyQt6.QtWidgets import QApplication, QWidget, \
                            QLabel, QPushButton, \
                            QMessageBox                         # ? 1


class GuiWindow(QWidget):

    def __init__(self, parent=None):
        super().__init__(parent)
        self.setGeometry(0, 0, 250, 240)
        self.build_ui()
        self.connect_signal_slot()

    def build_ui(self):
        self.qlb1 = QLabel("石川梨華ちゃんがあらわれた!", self)
        self.qlb2 = QLabel("ゆうしゃ ヨシヒコ はどうしますか。", self)
        self.qbp1 = QPushButton("話しかける", self)
        self.qbp2 = QPushButton("何もしない", self)
        self.qbp3 = QPushButton("触る", self)
        self.qlb1.setGeometry(25, 20, 200, 20)
        self.qlb2.setGeometry(25, 40, 200, 20)
        self.qbp1.setGeometry(25, 80, 200, 40)
        self.qbp2.setGeometry(25, 120, 200, 40)
        self.qbp3.setGeometry(25, 160, 200, 40)

    def connect_signal_slot(self):
        self.qbp3.clicked.connect(self.message_to_yoshihiko)    # ? 3

    def message_to_yoshihiko(self):                             # ? 2
        msg = QMessageBox(self)
        msg.setText("犯罪です")
        msg.exec()


if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = GuiWindow()
    window.show()
    sys.exit(app.exec())

あとはビルドすればGUIアプリが起動する。

「触る」を選択すると「犯罪です」というメッセージが出る。

まとめ

Pythonでメッセージボックスを出す方法を説明した。

コメント