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_())
(1)调整大小
mainWindow.resize(624, 511) 本行代码是设定窗口初始大小,大小为长624,高511。
窗体生产之后可以进行大小拉伸。还可以禁止窗体拉伸,代码如下:
mainWindow.setFixedSize(624,511)
(2)修改标题
mainWindow.setWindowTitle(_translate("mainWindow", "hello word"))
本行代码setwindowtitle是设置标题。
可以简化为:
mainWindow.setWindowTitle()
比如:mainWindow.setWindowTitle('您好')
(3)添加图标效果
我们可以利用 QIcon来添加图标效果。
from PyQt5.QtGui import QIcon
mainWindow.setWindowIcon(QIcon('logo.png'))
总结
本文写了Qmainwindows的一小部分方法,由于没有具体实践环境,局限了其他方法的使用。
其他方法将会在以后的笔记中展示出来。
代码中有setupUi和retranslateUi,在实际上,retranslateUi是可以不要的。
至于标题,图标这些方法:
mainWindow.setWindowTitle()
mainWindow.setWindowIcon()
不管放在setupUi和retranslateUi哪个中都是可以 的。
最终达到禁止拉伸,标题为您好,添加logo的窗口效果代码可以有以下几种:
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_())