Python-PyQt5-图形可视化界面(1)--主窗口--Qmainwindow

Ps:水平有限,欢迎建议和挑错
创建一个主窗口
创建一个简单的主窗口,代码如下

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_mainWindow(object):
    def setupUi(self, mainWindow):
        mainWindow.setObjectName("mainWindow")
        mainWindow.setWindowModality(QtCore.Qt.WindowModal)
        mainWindow.resize(624, 511)
        self.retranslateUi(mainWindow)
        QtCore.QMetaObject.connectSlotsByName(mainWindow)
    def retranslateUi(self, mainWindow):
        _translate = QtCore.QCoreApplication.translate
        mainWindow.setWindowTitle(_translate("mainWindow", "hello word"))

if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    mainWindow = QtWidgets.QMainWindow()
    ui = Ui_mainWindow()
    ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())
image.png

(1)调整大小

mainWindow.resize(624, 511) 本行代码是设定窗口初始大小,大小为长624,高511。
窗体生产之后可以进行大小拉伸。还可以禁止窗体拉伸,代码如下:

mainWindow.setFixedSize(624,511)

(2)修改标题

mainWindow.setWindowTitle(_translate("mainWindow", "hello word"))  
本行代码setwindowtitle是设置标题。

可以简化为:

mainWindow.setWindowTitle()      
比如:mainWindow.setWindowTitle('您好')
image.png

(3)添加图标效果

我们可以利用 QIcon来添加图标效果。

from PyQt5.QtGui import QIcon
mainWindow.setWindowIcon(QIcon('logo.png'))
image.png

总结

本文写了Qmainwindows的一小部分方法,由于没有具体实践环境,局限了其他方法的使用。
其他方法将会在以后的笔记中展示出来。
代码中有setupUi和retranslateUi,在实际上,retranslateUi是可以不要的。
至于标题,图标这些方法:

mainWindow.setWindowTitle()
mainWindow.setWindowIcon()

不管放在setupUi和retranslateUi哪个中都是可以 的。
最终达到禁止拉伸,标题为您好,添加logo的窗口效果代码可以有以下几种:


image.png

1、代码1

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import QIcon

class Ui_mainWindow(object):
    def setupUi(self, mainWindow):
        mainWindow.setObjectName("mainWindow")
        mainWindow.setWindowModality(QtCore.Qt.WindowModal)
        mainWindow.resize(624, 511)
        # mainWindow.setFixedSize(841,556)
        self.retranslateUi(mainWindow)
        QtCore.QMetaObject.connectSlotsByName(mainWindow)
    def retranslateUi(self, mainWindow):
        _translate = QtCore.QCoreApplication.translate
        mainWindow.setWindowTitle('您好')
        mainWindow.setWindowIcon(QIcon('logo.png'))
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    mainWindow = QtWidgets.QMainWindow()
    ui = Ui_mainWindow()
    ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())

2、代码2

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import QIcon

class Ui_mainWindow(object):
    def setupUi(self, mainWindow):
        mainWindow.setObjectName("mainWindow")
        mainWindow.setWindowModality(QtCore.Qt.WindowModal)
        mainWindow.resize(624, 511)
        # mainWindow.setFixedSize(841,556)
        self.retranslateUi(mainWindow)
        QtCore.QMetaObject.connectSlotsByName(mainWindow)
        mainWindow.setWindowTitle('您好')
        mainWindow.setWindowIcon(QIcon('logo.png'))
    def retranslateUi(self, mainWindow):
        _translate = QtCore.QCoreApplication.translate
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    mainWindow = QtWidgets.QMainWindow()
    ui = Ui_mainWindow()
    ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())

3、代码3

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtGui import QIcon

class Ui_mainWindow(object):
    def setupUi(self, mainWindow):
        mainWindow.setObjectName("mainWindow")
        mainWindow.setWindowModality(QtCore.Qt.WindowModal)
        mainWindow.resize(624, 511)
        # mainWindow.setFixedSize(841,556)
        QtCore.QMetaObject.connectSlotsByName(mainWindow)
        mainWindow.setWindowTitle('您好')
        mainWindow.setWindowIcon(QIcon('logo.png'))
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    mainWindow = QtWidgets.QMainWindow()
    ui = Ui_mainWindow()
    ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,626评论 0 17
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,812评论 25 709
  • 1、窗体 1、常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体。 ...
    Moment__格调阅读 4,607评论 0 11
  • 在人生的长河中,五年,弹指一挥间。五年对于我而言,除了微微变老的容颜和一点点增长的年龄,周围的一切仿佛都在改变,感...
    水绿如蓝1阅读 559评论 0 2
  • 昨天晚上自己睡觉时间是2点多,今早起床时间9点多。 这几天的状态一直不好,应该说是这一段时间一直是这样...
    tuionf阅读 829评论 2 3