QT:问题、解决与原因

在这里记录一些自己遇到的在QT开发上面的小问题和tips

目录

QComboBox 设置qss样式不生效

我设置的样式是:

cpp 复制代码
box->setStyleSheet("QComboBox {"
                                      "border: none;"
                                      "padding: 5px;"
                                      "background-color: rgb(6,68,98);"
                                      "color: white;"
                                      "font:14pt '黑体';"
                                      " height: 40px;"
                                      "}"
                                      "QComboBox::drop-down{"
                                      "width: 20px;"
                                      "height: 10px;"
                                      "subcontrol-origin: padding;"
                                      "subcontrol-position: center right ;"
                                      "margin-right: 10px;"
                                      "border-image: url(your path);"
                                      "background-color:transparent;"
                                      "}"
                                      "QComboBox QAbstractItemView { "
                                      "height: 40px; font-family: '黑体'; font-size: 13pt;"
                                      "background-color: rgb(6,68,98); color: white;"
                                      "}"
                           );

解决方法:必须需要使用 box->setView(new QListView())才能生效,另外如果要设置下拉列表的格式就需要设置QComboBox QAbstractItemView 部分。

原因:不明

qt按钮设置点击释放效果

cpp 复制代码
//使用lambda表达式将button的信号连接到表达式实现样式改变
connect(button,&QPushButton::pressed,[this](){
        button->setStyleSheet("background-image:url(your path);font: 13pt '黑体';color:red; "
                            "border-left: 2px solid white;"
                            "border-top: 2px solid white;"
                            "border-right: none;"
                            "border-bottom: none;");

    });
    connect(button,&QPushButton::released,[this](){
        button->setStyleSheet("background-image:url(your path);font: 13pt '黑体';color:black;"
                           "border-right: 2px solid white;"
                            "border-bottom: 2px solid white;"
                            "border-left: none;"
                            "border-top: none;");
    });

实现效果

相关推荐
blasit2 天前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
郑州光合科技余经理7 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
feifeigo1237 天前
matlab画图工具
开发语言·matlab
dustcell.7 天前
haproxy七层代理
java·开发语言·前端
norlan_jame7 天前
C-PHY与D-PHY差异
c语言·开发语言
多恩Stone7 天前
【C++入门扫盲1】C++ 与 Python:类型、编译器/解释器与 CPU 的关系
开发语言·c++·人工智能·python·算法·3d·aigc
QQ4022054967 天前
Python+django+vue3预制菜半成品配菜平台
开发语言·python·django
遥遥江上月7 天前
Node.js + Stagehand + Python 部署
开发语言·python·node.js
m0_531237177 天前
C语言-数组练习进阶
c语言·开发语言·算法
Railshiqian7 天前
给android源码下的模拟器添加两个后排屏的修改
android·开发语言·javascript