如何使用CSS样式表更改Qt的QMenu中选定项目的右箭头图像?
How to change right-arrow image in Qt's QMenu for selected items with a CSS stylesheet?
我的应用程序中有一个Qt QMenu,由两个级别组成(子菜单的顶层,然后是包含操作的每个子菜单),我们有一个自定义的深灰色样式,其中菜单背景是灰色,文本颜色是白色,右箭头是白色。当子菜单项突出显示(鼠标悬停)时,项目背景为白色,文本为黑色,我希望向右箭头也切换到黑色图像。我正在使用CSS样式表来执行此操作。但是,我似乎找不到正确的语法来为项目选定状态设置备用右箭头图像。我的CSS看起来像这样:
QMenu
{
background-color: rgb( 24, 24, 24 );
color: white;
}
QMenu::item:selected
{
background-color: white;
color: black;
}
QMenu::right-arrow
{
image: url(Resources/MenuRight.png);
}
我在上述代码之后尝试了以下添加(其中MenuRightSelected.png
是MenuRight.png
的反色图像):
QMenu::right-arrow:selected
{
image: url(Resources/MenuRightSelected.png);
}
和
QMenu::item::right-arrow:selected
{
image: url(Resources/MenuRightSelected.png);
}
这些都不会影响显示的 QMenu。有谁知道是否有可能做我所追求的事情,如果是,如何做?
可能您只需要更改css文件中项目的顺序。我曾经听说Qt从上向上解析css文件。再往上的项目会覆盖再往下的项目的行为。
相关文章:
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- 无法在 CLion 中构建 C++ 项目
- 运行同一解决方案的另一个项目的项目
- 获取位于安卓工作室中可绘制的图像的绝对路径,用于NDK项目
- 如何将图像文件夹添加到CMake项目以便在c ++可执行文件中使用这些图像?
- 在选定的 QMenu 项目上显示刻度图像
- 如何使用CSS样式表更改Qt的QMenu中选定项目的右箭头图像?
- 从 WinAPI C 项目中的专用 DLL 加载图像资源
- 如果我在Visual Studio项目中将图像作为资源包含在内,这些图像是否会编译到可执行文件中
- 图像处理项目的照片中照明水平变化的样本
- OpenCV 项目在将直方图应用于黑色图像时崩溃
- 无法加载Qt5/cmake项目中Qt资源文件中指定的图像
- 如何在从头开始创建Visual C++MFC项目时添加图像
- 将图像和文件包含到项目中
- Opencv中第一个显示图像的项目,错误.
- 将qwidget上的当前项目保存为图像
- 从visual studio IDE运行时,项目无法加载图像资源
- 将 QML 项目作为图像复制到剪贴板C++
- 图像 (PNG) 未显示在 c++ Win32 项目的最终执行中
- 如何在eclipse上调试图像处理项目