添加工具栏
创建一个窗口,右击窗口,点击添加工具栏。
状态栏是用来显示信息的。
在状态栏的空格中输入文本即可编辑。
菜单栏中并不是按钮而是行动,视图–动作编辑器就可以打开动作。
创建主窗口
主窗口类型:
QMainWindow:可以包含菜单栏、工具栏、状态栏和标题栏
最常见的窗口形式。
QDialog:对话窗口的基类。没有菜单栏、工具栏、状态栏。
QWidget:不确定窗口的用途,就是用QWidget。
创建一个显示5秒的主窗口 :
import sys
from PyQt5.QtWidgets import QMainWindow, QApplication
from PyQt5.QtGui import QIcon
#设置窗口图标并且设置一个只显示5秒的状态栏
class FirstMainWindow(QMainWindow):
def __init__(self, parent=None):
super(FirstMainWindow, self).__init__(parent)
# 子类重写__init__函数的时候,可以使用super调用父类的init函数
# 这里是python2的语法,python3可以使用super().__init__(parent)
# 设置主窗口的标题
self.setWindowTitle('第一个主窗口应用')
# 设置窗口的尺寸
self.resize(400, 300)
self.status = self.statusBar()
self.status.showMessage('只存在5秒',5000)
if __name__ == '__main__' :
app = QApplication(sys.argv)
# 设置图标
app.setWindowIcon(QIcon('C:\\Users\\29538\\Pictures\\一级.jpg'))
main = FirstMainWindow()
main.show()
sys.exit(app.exec_())
如何让窗口居中
我们已经完成了一个窗口(上面)。
PyQt5中并没有API能够让窗口直接居中,因此需要我们自己写一个函数。
#QDesktopwidget 可以得到屏幕尺寸
import sys
from PyQt5.QtWidgets import QMainWindow, QApplication,QDesktopWidget
from PyQt5.QtGui import QIcon
#设置窗口图标并且设置一个只显示5秒的状态栏
class CenterForm(QMainWindow):
def __init__(self, parent=None):
super(CenterForm, self).__init__(parent)
# 子类重写__init__函数的时候,可以使用super调用父类的init函数
# 这里是python2的语法,python3可以使用super().__init__(parent)
# 设置主窗口的标题
self.setWindowTitle('窗口居中')
# 设置窗口的尺寸
self.resize(400, 300)
self.center()
def center(self):
#获取屏幕的坐标系
screen = QDesktopWidget().screenGeometry()
#获取窗口的坐标系
size = self.geometry()
newLeft = (screen.width() - size.width()) / 2
newTop = (screen.height() - size.height()) / 2
self.move(newLeft,newTop)
print(1)
if __name__ == '__main__' :
app = QApplication(sys.argv)
# 设置图标
#app.setWindowIcon(QIcon('C:\\Users\\29538\\Pictures\\一级.jpg'))
main = CenterForm()
main.show()
sys.exit(app.exec_())