我正在创建一个QDockWidget,我希望它的标签(当列表时)或标题栏(当没有列表时)在两种颜色之间闪烁。
我目前正在做以下事情,但只有身体在两种颜色之间闪烁:
//Setup the array of styles for the flash:
std::array<const char*, 2> flashStyles = {
" background-color: lightblue; color: black;",
" background-color: orange; color: black; "
};
//Setup the timer and kick it off:
connect(m_flashTimer, &QTimer::timeout, [=]()
{
//Perform the flash by alternating the background:
setStyleSheet(flashStyles[
m_pass == 0 ? m_pass++ : m_pass--
]);
update();
});
我似乎无法找到任何允许我更改选项卡颜色/标题栏颜色的属性。我是否需要在其他位置设置选项卡颜色属性?
您需要找出QDockWidget在内部使用哪个Widget来显示选项卡。然后使用正确的选择器使用适当的样式。可能你需要选择一个QTabBar,它是QDockWidget的后代。这可能看起来像:
QDockWidget QTabBar {}
也许这些链接也可以帮助您:
http://doc.qt.io/archives/qt-4.8/stylesheet-syntax.html
http://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qdockwidget