【问题标题】:Qt: How to set context menu stylesheet for whole application's QLineEditQt:如何为整个应用程序的 QLineEdit 设置上下文菜单样式表
【发布时间】:2021-06-29 08:03:49
【问题描述】:

正如您在下面的屏幕截图中看到的那样,所选项目的字体颜色是白色作为其背景色,这导致我们看不到项目文本,这个问题存在于我应用程序中的所有 QLineEdits 中,所以我只想为所有 QLineEdits 的上下文菜单将所选项目的字体颜色设置为黑色,有没有什么快速的方法可以用更少的代码来做到这一点?

【问题讨论】:

    标签: qt qlineedit qmenu qt-contextmenu


    【解决方案1】:

    只需为您的应用设置css

    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
    
        a.setStyleSheet("QLineEdit QMenu::item {color: rgb(0, 0, 255);}");
    
        MainWindow w;
        w.show();
    
        return a.exec();
    }
    

    如果您只想为选定(活动)项目设置字体颜色,则应更正此代码

    a.setStyleSheet("QLineEdit QMenu::item {\ncolor: rgb(0, 0, 255);\n} QLineEdit QMenu::item::selected{ color: rgb(255, 0, 0)}");
    

    【讨论】:

    • 谢谢,它有效!最后我使用`QApplication a(argc, argv); a.setStyleSheet("QLineEdit QMenu::item::selected{color:rgb(0, 0, 0);background-color:rgb(200,200,200)}");`
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-23
    • 2018-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-06
    • 1970-01-01
    相关资源
    最近更新 更多