加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

建立了一个MainWindow,创建最基本的菜单栏、状态栏、工具栏,并重新定义了“X”关闭的默认行为。

发布时间:2020-05-25 00:50:05 所属栏目:Python 来源:互联网
导读:建立了一个MainWindow,创建最基本的菜单栏、状态栏、工具栏,并重新定义了“X”关闭的默认行为。

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

# -*- coding: utf-8 -*-
import sys
from PyQt4 import QtGui
from PyQt4 import QtCore


class Icon(QtGui.QMainWindow):
    def __init__(self,parent=None):
        super(Icon,self).__init__(parent)

        # MenuBar
        menubar = self.menuBar()
        file = menubar.addMenu('文件')
        fileopen = file.addAction('打开')
        fileopen.setStatusTip('打开文件')
        filexit = file.addAction('退出')
        filexit.setShortcut('Ctrl+Q')
        self.connect(filexit,QtCore.SIGNAL('triggered()'),self.exit)
        self.setMenuBar(menubar)

        # ToolBar
        editToolbar = self.addToolBar('设置')
        newTool = editToolbar.addAction(QtGui.QIcon('new.png'),'新建')
        saveTool = editToolbar.addAction(QtGui.QIcon('save.png'),'保存')
        self.connect(saveTool,self.save)

        exit = QtGui.QPushButton('Exit',self)
        exit.setGeometry(30,100,50,30)
        exit.setToolTip('点击按钮关闭窗口')
        self.connect(exit,QtCore.SIGNAL('clicked()'),self.exit)

        # 设置窗口大小已经位置
        self.resize(350,250)
        self.center()

        self.statusBar().showMessage('准备就绪')
        self.setWindowIcon(QtGui.QIcon('logo.png'))
        self.setWindowTitle('PyQt4 Demo')

    def closeEvent(self,event):
        replay = QtGui.QMessageBox.question(
            self,'温馨提示','是否确定关闭窗口',QtGui.QMessageBox.Yes,QtGui.QMessageBox.No)
        if replay == QtGui.QMessageBox.Yes:
            event.accept()
        else:
            event.ignore()

    def save(self):
        replay = QtGui.QMessageBox.question(
            self,'是否进行保存',QtGui.QMessageBox.No)

    def exit(self):
        sys.exit(0)

    def center(self):
        screenGeometry = QtGui.QDesktopWidget().screenGeometry()
        size = self.geometry()
        self.move((screenGeometry.width() - size.width()) / 2,(screenGeometry.height() - size.height()) / 2)


if __name__ == '__main__':
    app = QtGui.QApplication(sys.argv)
    icon = Icon()
    icon.show()
    app.exec_()

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读