PyQt5组合框 按压时的不同边框颜色
在这篇文章中,我们将看到如何为组合框设置不同的边框颜色,当我们为组合框设置边框时,所有的边框都是相同的颜色,尽管我们可以分别改变每边的颜色。只有当组合框被按下时,彩色的边框才会出现,否则正常的边框是可见的。
为了做到这一点,我们必须改变与组合框相关的样式表,下面是样式表代码
代码1
QComboBox::pressed { border : 5px solid; border-color-top : red; border-color-right : green; border-color-bottom : blue; border-color-left : yellow; }
代码2
QComboBox::pressed { border : 5px solid; border-color : red green blue yellow }
这两个代码都执行类似的任务,只是代码1是代码2的扩展版本。
下面是执行情况
# importing libraries from PyQt5.QtWidgets import * from PyQt5 import QtCore, QtGui from PyQt5.QtGui import * from PyQt5.QtCore import * import sys class Window(QMainWindow): def __init__(self): super().__init__() # setting title self.setWindowTitle("Python ") # setting geometry self.setGeometry(100, 100, 600, 400) # calling method self.UiComponents() # showing all the widgets self.show() # method for widgets def UiComponents(self): # creating a check-able combo box object self.combo_box = QComboBox(self) # setting geometry of combo box self.combo_box.setGeometry(200, 150, 150, 80) # geek list geek_list = ["Sayian", "Super Sayian", "Super Sayian 2", "Super Sayian B"] # adding list of items to combo box self.combo_box.addItems(geek_list) # setting style sheet # adding border to combo box # adding colorful border when it get pressed self.combo_box.setStyleSheet("QComboBox" "{" "border : 5px solid black;" "}" "QComboBox::pressed" "{" "border : 5px solid;" "border-color : red green blue yellow;" "}") # create pyqt5 app App = QApplication(sys.argv) # create the instance of our Window window = Window() window.show() # start the app sys.exit(App.exec())
版权声明:本页面内容旨在传播知识,为用户自行发布,若有侵权等问题请及时与本网联系,我们将第一时间处理。E-mail:284563525@qq.com