【QT】学习课-windows、windowsvista、fusion风格切换(11)

Qt默认的是windowsvista风格,想要切换不同的风格,其实很简单,几行代码解决问题,那么我们一起来看下如何切换想要的风格,让自己的界面独具一格。

一.环境配置

1.python 3.7.8  

可直接进入官网下载安装:Download Python | Python.org

2.QT Designer 

官方下载路径:Qt Designer Download for Windows and Mac

二.实例演示

例:

1.用Qt Designer 来设计一个串口界面的布局,如下:

 以上界面,采用的就是Qt默认的windowsvista风格,第一眼看过去感觉还可以,切换成另外两个风格来看看,会有什么变化呢?

2.更换fusion风格:

from PyQt5.QtWidgets import QApplication,QStyleFactory  ##导入库


QApplication.setStyle(QStyleFactory.create('fusion'))  ##更换fusion风格

输出:

 输出如上所述,有没有感觉整个界面变得更加有型了,正如fusion这个英文单词的意思一样,(融合),整个界面变得更加立体、突兀,和默认的windowsvista风格比起来,更加有型了。

fusion风格即是如此,那么接下来再来看一下windows风格是如何?

3.更换为windows风格:

from PyQt5.QtWidgets import QApplication,QStyleFactory  ##导入库


QApplication.setStyle(QStyleFactory.create('windows'))  ##更换windows风格

 输出:

 强烈的机械工业风主题界面,给我的感觉就是很老、很僵硬,现在的界面设计很少会用到这种机械工业风格了,以上三种风格的界面就是如此了。

4.此次案例界面代码如下,喜欢的自行copy就好了。

from PyQt5 import QtCore, QtGui, QtWidgets
from my_combobox import My_ComBoBox

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(914, 672)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.groupBox = QtWidgets.QGroupBox(self.centralwidget)
        self.groupBox.setGeometry(QtCore.QRect(20, 30, 321, 161))
        self.groupBox.setObjectName("groupBox")
        self.comboBox = My_ComBoBox(self.groupBox)

        self.comboBox.setGeometry(QtCore.QRect(130, 30, 161, 22))
        self.comboBox.setObjectName("comboBox")
        self.comboBox.addItem("")
        self.label_23 = QtWidgets.QLabel(self.groupBox)
        self.label_23.setGeometry(QtCore.QRect(10, 30, 91, 21))
        self.label_23.setStyleSheet("background-color: rgb(85, 170, 255);")
        self.label_23.setAlignment(QtCore.Qt.AlignCenter)
        self.label_23.setObjectName("label_23")
        self.label_24 = QtWidgets.QLabel(self.groupBox)
        self.label_24.setGeometry(QtCore.QRect(10, 70, 91, 21))
        self.label_24.setStyleSheet("background-color: rgb(85, 170, 255);")
        self.label_24.setAlignment(QtCore.Qt.AlignCenter)
        self.label_24.setObjectName("label_24")
        self.comboBox_3 = QtWidgets.QComboBox(self.groupBox)
        self.comboBox_3.setGeometry(QtCore.QRect(130, 70, 161, 22))
        self.comboBox_3.setObjectName("comboBox_3")
        self.comboBox_3.addItem("")
        self.comboBox_3.addItem("")
        self.comboBox_3.addItem("")
        self.comboBox_3.addItem("")
        self.comboBox_3.addItem("")
        self.pushButton_2 = QtWidgets.QPushButton(self.groupBox)
        self.pushButton_2.setGeometry(QtCore.QRect(30, 120, 121, 31))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_5 = QtWidgets.QPushButton(self.groupBox)
        self.pushButton_5.setGeometry(QtCore.QRect(160, 120, 121, 31))
        self.pushButton_5.setObjectName("pushButton_5")
        self.groupBox_2 = QtWidgets.QGroupBox(self.centralwidget)
        self.groupBox_2.setGeometry(QtCore.QRect(20, 200, 351, 291))
        self.groupBox_2.setObjectName("groupBox_2")
        self.comboBox_4 = QtWidgets.QComboBox(self.groupBox_2)
        self.comboBox_4.setGeometry(QtCore.QRect(230, 30, 69, 22))
        self.comboBox_4.setObjectName("comboBox_4")
        self.comboBox_4.addItem("")
        self.comboBox_4.addItem("")
        self.comboBox_4.addItem("")
        self.comboBox_4.addItem("")
        self.label_25 = QtWidgets.QLabel(self.groupBox_2)
        self.label_25.setGeometry(QtCore.QRect(10, 30, 91, 21))
        self.label_25.setStyleSheet("background-color: rgb(85, 170, 255);")
        self.label_25.setAlignment(QtCore.Qt.AlignCenter)
        self.label_25.setObjectName("label_25")
        self.label_26 = QtWidgets.QLabel(self.groupBox_2)
        self.label_26.setGeometry(QtCore.QRect(10, 70, 91, 21))
        self.label_26.setStyleSheet("background-color: rgb(85, 170, 255);")
        self.label_26.setAlignment(QtCore.Qt.AlignCenter)
        self.label_26.setObjectName("label_26")
        self.comboBox_5 = QtWidgets.QComboBox(self.groupBox_2)
        self.comboBox_5.setGeometry(QtCore.QRect(230, 70, 69, 22))
        self.comboBox_5.setObjectName("comboBox_5")
        self.comboBox_5.addItem("")
        self.comboBox_5.addItem("")
        self.label_27 = QtWidgets.QLabel(self.groupBox_2)
        self.label_27.setGeometry(QtCore.QRect(10, 110, 91, 21))
        self.label_27.setStyleSheet("background-color: rgb(85, 170, 255);")
        self.label_27.setAlignment(QtCore.Qt.AlignCenter)
        self.label_27.setObjectName("label_27")
        self.comboBox_6 = QtWidgets.QComboBox(self.groupBox_2)
        self.comboBox_6.setGeometry(QtCore.QRect(230, 110, 69, 22))
        self.comboBox_6.setObjectName("comboBox_6")
        self.comboBox_6.addItem("")
        self.comboBox_6.addItem("")
        self.comboBox_6.addItem("")
        self.comboBox_6.addItem("")
        self.comboBox_6.addItem("")
        self.label_28 = QtWidgets.QLabel(self.groupBox_2)
        self.label_28.setGeometry(QtCore.QRect(10, 150, 91, 21))
        self.label_28.setStyleSheet("background-color: rgb(85, 170, 255);")
        self.label_28.setAlignment(QtCore.Qt.AlignCenter)
        self.label_28.setObjectName("label_28")
        self.comboBox_7 = QtWidgets.QComboBox(self.groupBox_2)
        self.comboBox_7.setGeometry(QtCore.QRect(230, 150, 81, 22))
        self.comboBox_7.setObjectName("comboBox_7")
        self.comboBox_7.addItem("")
        self.comboBox_7.addItem("")
        self.comboBox_7.addItem("")
        self.comboBox_7.addItem("")
        self.label_29 = QtWidgets.QLabel(self.groupBox_2)
        self.label_29.setGeometry(QtCore.QRect(10, 190, 201, 21))
        self.label_29.setStyleSheet("background-color: rgb(85, 170, 255);")
        self.label_29.setAlignment(QtCore.Qt.AlignCenter)
        self.label_29.setObjectName("label_29")
        self.comboBox_8 = QtWidgets.QComboBox(self.groupBox_2)
        self.comboBox_8.setGeometry(QtCore.QRect(230, 190, 81, 22))
        self.comboBox_8.setObjectName("comboBox_8")
        self.comboBox_8.addItem("")
        self.pushButton = QtWidgets.QPushButton(self.groupBox_2)
        self.pushButton.setGeometry(QtCore.QRect(50, 230, 201, 31))
        self.pushButton.setObjectName("pushButton")
        self.label_30 = QtWidgets.QLabel(self.groupBox_2)
        self.label_30.setGeometry(QtCore.QRect(270, 230, 31, 31))
        self.label_30.setStyleSheet("border-image: url(:/BACK/107zi.jpg);")
        self.label_30.setText("")
        self.label_30.setAlignment(QtCore.Qt.AlignCenter)
        self.label_30.setObjectName("label_30")
        self.textBrowser = QtWidgets.QTextBrowser(self.centralwidget)
        self.textBrowser.setGeometry(QtCore.QRect(410, 50, 491, 321))
        self.textBrowser.setObjectName("textBrowser")
        self.groupBox_3 = QtWidgets.QGroupBox(self.centralwidget)
        self.groupBox_3.setGeometry(QtCore.QRect(20, 500, 351, 91))
        self.groupBox_3.setObjectName("groupBox_3")
        self.radioButton = QtWidgets.QRadioButton(self.groupBox_3)
        self.radioButton.setGeometry(QtCore.QRect(20, 20, 89, 16))
        self.radioButton.setObjectName("radioButton")
        self.radioButton_2 = QtWidgets.QRadioButton(self.groupBox_3)
        self.radioButton_2.setGeometry(QtCore.QRect(160, 20, 89, 16))
        self.radioButton_2.setObjectName("radioButton_2")
        self.pushButton_3 = QtWidgets.QPushButton(self.groupBox_3)
        self.pushButton_3.setGeometry(QtCore.QRect(30, 50, 75, 23))
        self.pushButton_3.setObjectName("pushButton_3")
        self.pushButton_4 = QtWidgets.QPushButton(self.groupBox_3)
        self.pushButton_4.setGeometry(QtCore.QRect(160, 50, 75, 23))
        self.pushButton_4.setObjectName("pushButton_4")
        self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit.setGeometry(QtCore.QRect(410, 410, 491, 181))
        self.lineEdit.setObjectName("lineEdit")
        self.label_31 = QtWidgets.QLabel(self.centralwidget)
        self.label_31.setGeometry(QtCore.QRect(410, 30, 91, 21))
        self.label_31.setStyleSheet("background-color: rgb(170, 170, 255);")
        self.label_31.setAlignment(QtCore.Qt.AlignCenter)
        self.label_31.setObjectName("label_31")
        self.label_32 = QtWidgets.QLabel(self.centralwidget)
        self.label_32.setGeometry(QtCore.QRect(410, 390, 91, 21))
        self.label_32.setStyleSheet("background-color: rgb(170, 170, 255);")
        self.label_32.setAlignment(QtCore.Qt.AlignCenter)
        self.label_32.setObjectName("label_32")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 914, 23))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.toolBar = QtWidgets.QToolBar(MainWindow)
        self.toolBar.setObjectName("toolBar")
        MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
        self.action = QtWidgets.QAction(MainWindow)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/BACK/Desktop/img/file.jpg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action.setIcon(icon)
        self.action.setObjectName("action")
        self.action_2 = QtWidgets.QAction(MainWindow)
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(":/BACK/Desktop/img/set.jpg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_2.setIcon(icon1)
        self.action_2.setObjectName("action_2")
        self.action_3 = QtWidgets.QAction(MainWindow)
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(":/BACK/Desktop/img/help.jpg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_3.setIcon(icon2)
        self.action_3.setObjectName("action_3")
        self.action_4 = QtWidgets.QAction(MainWindow)
        icon3 = QtGui.QIcon()
        icon3.addPixmap(QtGui.QPixmap(":/BACK/Desktop/img/quit(1).jpg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.action_4.setIcon(icon3)
        self.action_4.setObjectName("action_4")
        self.toolBar.addAction(self.action)
        self.toolBar.addAction(self.action_2)
        self.toolBar.addAction(self.action_3)
        self.toolBar.addAction(self.action_4)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "串口工具v1.0"))
        self.groupBox.setTitle(_translate("MainWindow", "Basic Serial settings"))
        self.comboBox.setItemText(0, _translate("MainWindow", "Choose at session start"))
        self.label_23.setText(_translate("MainWindow", "Serial port:"))
        self.label_24.setText(_translate("MainWindow", "Speed (bps):"))
        self.comboBox_3.setItemText(0, _translate("MainWindow", "115200"))
        self.comboBox_3.setItemText(1, _translate("MainWindow", "1200"))
        self.comboBox_3.setItemText(2, _translate("MainWindow", "2400"))
        self.comboBox_3.setItemText(3, _translate("MainWindow", "9600"))
        self.comboBox_3.setItemText(4, _translate("MainWindow", "新建项目"))
        self.pushButton_2.setText(_translate("MainWindow", "Open Serial"))
        self.pushButton_5.setText(_translate("MainWindow", "Close Serial"))
        self.groupBox_2.setTitle(_translate("MainWindow", "Advanced Serial settings"))
        self.comboBox_4.setItemText(0, _translate("MainWindow", "8"))
        self.comboBox_4.setItemText(1, _translate("MainWindow", "7"))
        self.comboBox_4.setItemText(2, _translate("MainWindow", "6"))
        self.comboBox_4.setItemText(3, _translate("MainWindow", "5"))
        self.label_25.setText(_translate("MainWindow", "Data bits:"))
        self.label_26.setText(_translate("MainWindow", "Stop bits:"))
        self.comboBox_5.setItemText(0, _translate("MainWindow", "1"))
        self.comboBox_5.setItemText(1, _translate("MainWindow", "2"))
        self.label_27.setText(_translate("MainWindow", "Parity:"))
        self.comboBox_6.setItemText(0, _translate("MainWindow", "None"))
        self.comboBox_6.setItemText(1, _translate("MainWindow", "Odd"))
        self.comboBox_6.setItemText(2, _translate("MainWindow", "Even"))
        self.comboBox_6.setItemText(3, _translate("MainWindow", "Mark"))
        self.comboBox_6.setItemText(4, _translate("MainWindow", "Space"))
        self.label_28.setText(_translate("MainWindow", "Flow control:"))
        self.comboBox_7.setItemText(0, _translate("MainWindow", "Xon/Xoff"))
        self.comboBox_7.setItemText(1, _translate("MainWindow", "None"))
        self.comboBox_7.setItemText(2, _translate("MainWindow", "Dsr/Dtr"))
        self.comboBox_7.setItemText(3, _translate("MainWindow", "Rts/Cts"))
        self.label_29.setText(_translate("MainWindow", "execute macro as session start:"))
        self.comboBox_8.setItemText(0, _translate("MainWindow", "None"))
        self.pushButton.setText(_translate("MainWindow", "Reset defaults"))
        self.groupBox_3.setTitle(_translate("MainWindow", "Serial Send settings"))
        self.radioButton.setText(_translate("MainWindow", "ASCII"))
        self.radioButton_2.setText(_translate("MainWindow", "HEX"))
        self.pushButton_3.setText(_translate("MainWindow", "清除发送"))
        self.pushButton_4.setText(_translate("MainWindow", "发送数据"))
        self.label_31.setText(_translate("MainWindow", "接收数据:"))
        self.label_32.setText(_translate("MainWindow", "发送数据:"))
        self.toolBar.setWindowTitle(_translate("MainWindow", "toolBar"))
        self.action.setText(_translate("MainWindow", "文件"))
        self.action_2.setText(_translate("MainWindow", "设置"))
        self.action_3.setText(_translate("MainWindow", "帮助"))
        self.action_4.setText(_translate("MainWindow", "退出"))

三.总结

OK,不同风格之间的切换就是这样了,很简单!

@Neng

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

==PP

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值