Qt for Pythonで終了するだけのアプリケーションを作成
タイトルの通り、Qt for Pythonを利用して、ウィンドウを表示して、メニューで「終了」を選択すると終了するアプリケーションを作成します。
環境構築
あらかじめQt for Pythonが対応するバージョンのPythonが導入されていることを前提とします。検証した環境ではPython 3.6が導入されています。
以下のコマンドでQt for Python(PySide2)を導入します。
pip install PySide2
ソースコード
from PySide2.QtWidgets import QApplication
from PySide2.QtWidgets import QMainWindow
from PySide2.QtWidgets import QMenu
from PySide2.QtWidgets import QAction
from PySide2.QtGui import QKeySequence
class MainWindow(QMainWindow):
def __init__(self, app: QApplication):
super(MainWindow, self).__init__()
self.app = app
self.setWindowTitle("サンプルプログラム")
self.resize(400,200)
def main(self) -> None:
# 「終了」項目の作成
exit_action = QAction('終了(&X)', self)
# 「終了」項目が選択された場合に起動する関数を設定
exit_action.triggered.connect(self.exit)
# 「終了」項目を選択するショートカットキーを設定
exit_action.setShortcut(QKeySequence("Ctrl+Q"))
# 「ファイル」メニューを作成
file_menu = QMenu("ファイル(&F)")
# 「ファイル」メニューに「終了」項目を追加
file_menu.addAction(exit_action)
# 「ファイル」メニューをメニューバーに追加
self.menuBar().addMenu(file_menu)
self.show()
self.app.exec_()
def exit(self) -> None:
self.close()
def main() -> None:
app = QApplication()
window = MainWindow(app)
window.main()
if __name__ == '__main__':
main()
起動方法
from PySide2.QtWidgets import QApplication
from PySide2.QtWidgets import QMainWindow
from PySide2.QtWidgets import QMenu
from PySide2.QtWidgets import QAction
from PySide2.QtGui import QKeySequence
class MainWindow(QMainWindow):
def __init__(self, app: QApplication):
super(MainWindow, self).__init__()
self.app = app
self.setWindowTitle("サンプルプログラム")
self.resize(400,200)
def main(self) -> None:
# 「終了」項目の作成
exit_action = QAction('終了(&X)', self)
# 「終了」項目が選択された場合に起動する関数を設定
exit_action.triggered.connect(self.exit)
# 「終了」項目を選択するショートカットキーを設定
exit_action.setShortcut(QKeySequence("Ctrl+Q"))
# 「ファイル」メニューを作成
file_menu = QMenu("ファイル(&F)")
# 「ファイル」メニューに「終了」項目を追加
file_menu.addAction(exit_action)
# 「ファイル」メニューをメニューバーに追加
self.menuBar().addMenu(file_menu)
self.show()
self.app.exec_()
def exit(self) -> None:
self.close()
def main() -> None:
app = QApplication()
window = MainWindow(app)
window.main()
if __name__ == '__main__':
main()
上記のソースコードを適当なファイル名で保存します。たとえばファイル名をmain.pyとすると、以下のコマンドで起動します。
python main.py
操作方法
以下のいずれかの方法でアプリケーションを終了します。
- マウスで「ファイル」メニューを選択して、開いたメニューから「終了」項目を選択すると、アプリケーションが終了します。
- alt+fで「ファイル」メニューを開いて、alt+xでアプリケーションが終了します。
- ctrl+qでアプリケーションが終了します。
Author And Source
この問題について(Qt for Pythonで終了するだけのアプリケーションを作成), 我々は、より多くの情報をここで見つけました https://qiita.com/kubotama/items/f83e569b361d4601b0e2著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .