Python Pyqt5使QSplitter手柄色彩鲜艳/易于识别
我想更改我的拆分器句柄在Pyqt5中的外观。在下面的代码中,将Self.WiGG1和Self.WiGG2视为任意两个小部件。使用setStyleSheet会导致以下错误: self.my\u splitter\u handle.setStyleSheet(“边框:3px蓝色”) AttributeError:“非类型”对象没有属性“setStyleSheet”Python Pyqt5使QSplitter手柄色彩鲜艳/易于识别,python,pyqt5,stylesheet,qsplitter,Python,Pyqt5,Stylesheet,Qsplitter,我想更改我的拆分器句柄在Pyqt5中的外观。在下面的代码中,将Self.WiGG1和Self.WiGG2视为任意两个小部件。使用setStyleSheet会导致以下错误: self.my\u splitter\u handle.setStyleSheet(“边框:3px蓝色”) AttributeError:“非类型”对象没有属性“setStyleSheet” import sys from PyQt5.QtCore import Qt from PyQt5 import QtGui from
import sys
from PyQt5.QtCore import Qt
from PyQt5 import QtGui
from PyQt5.QtWidgets import QApplication, QWidget, QFrame, QLineEdit, QHBoxLayout, QSplitter
class MyMainWindow(QWidget):
def __init__(self):
super().__init__()
self.title = "PyQt5 Splitter"
self.top = 200
self.left = 500
self.width = 400
self.height = 300
hbox = QHBoxLayout()
self.widg_1 = QFrame()
self.widg_1.setFrameShape(QFrame.StyledPanel)
self.my_splitter = QSplitter(Qt.Horizontal)
self.widg_2 = QLineEdit()
self.my_splitter.addWidget(self.widg_1)
self.my_splitter.addWidget(self.widg_2)
self.my_splitter.setSizes([200, 200])
hbox.addWidget(self.my_splitter)
# Note: splitter handle 0 is always hidden and handle 1 is between the widgets 1 & 2
self.my_splitter_handle = self.my_splitter.handle(1)
self.my_splitter_handle.setStyleSheet("background: 3px blue;")
self.setLayout(hbox)
self.setWindowTitle(self.title)
self.setGeometry(self.left, self.top, self.width, self.height)
self.show()
App = QApplication(sys.argv)
window = MyMainWindow()
sys.exit(App.exec())
注意:我只想要一个像样的、外观突出的拆分器手柄,带有箭头或其他类似于图中所示的标记
请提供一份详细的报告。还请注意,如果要为QSplitter句柄着色,必须将样式表设置为QSplitter,并使用
::handle
伪选择器(例如,self.my_splitter.setStyleSheet('QSplitter::handle{background:blue;})
),感谢@musicamante指出伪选择器。我现在有了背景色。在没有背景色的情况下,有没有办法使箭头符号或虚线分隔符符号使用不同的颜色?