Cry*_*ite 2 python pyqt qtstylesheets
我在脚本中漫游着各种PushButton,并且正在加载外部CSS文件来处理软件中大量的窗口小部件。我已经到了必须按类搜寻按钮并尝试定义某些属性的地步。对按钮的通用调用,例如:QFrame:QPushButton #btnName {css:blah; }正在工作,但是伪状态无效:特别是将鼠标悬停并按下。这是我正在尝试的:
--THIS WORKS
QFrame:QPushButton #btnName { css: blah; }
--THESE DO NOT
QFrame:QPushButton:hover #btnName { css: hoverstuff; }
QFrame:QPushButton:pressed #btnName { css: pressedstuff; }
Run Code Online (Sandbox Code Playgroud)
工作表中有很多CSS样式;这些线的“上方”可能是问题吗?对于伪状态,我的语法错误吗?是什么赋予了!?提前致谢。
您使用的当前语法在所有示例中都是错误的。
选择器QFrame:QPushButton将简单地忽略,:QPushbutton因为它不是有效的伪状态。同样,ID选择器前的空格意味着该规则将适用于所有被称为的后代对象#btnName(这可能不是您想要的,但这还是第一个示例工作的原因)。
我假设您真正想要的是该规则适用于任何QPushButton带有objectName“ btnName” 的规则,该规则也是a的后代QFrame。
在这种情况下,第一个规则应为:
QFrame QPushButton#btnName { css: blah; }
Run Code Online (Sandbox Code Playgroud)
其他两个规则应为:
QFrame QPushButton#btnName:hover { css: hoverstuff; }
QFrame QPushButton#btnName:pressed { css: pressedstuff; }
Run Code Online (Sandbox Code Playgroud)
有关选择器类型的更多详细信息,请参见此处。