Qt qss问题总结

1.在QWidget中设定了setObjectName,就是不起作用。

解决方法重写paintEvent。

#ifndef BROWSEWIDGET_H
#define BROWSEWIDGET_H

#include <QObject>
#include <QWidget>
#include <QLabel>

class BrowseWidget : public QWidget
{
    Q_OBJECT
public:
    explicit BrowseWidget(QWidget *parent = nullptr);

signals:
protected:
    void paintEvent(QPaintEvent *event);
public slots:
private:
    void initUI();
};

#endif // BROWSEWIDGET_H
#include "browsewidget.h"
#include<QVBoxLayout>
#include<QHBoxLayout>
#include <QStylePainter>
#include <QStyleOption>
BrowseWidget::BrowseWidget(QWidget *parent) : QWidget(parent)
{
    initUI();
    this->setObjectName("BrowseWidget");
}
void BrowseWidget::paintEvent(QPaintEvent *event)
{
    QStylePainter painter(this);
    QStyleOption opt;
    opt.initFrom(this);
    opt.rect=rect();
    painter.drawPrimitive(QStyle::PE_Widget, opt);
    QWidget::paintEvent(event);
}

void BrowseWidget::initUI()
{
    QVBoxLayout *mainVLayout=new QVBoxLayout(this);
    QLabel *lbl=new QLabel("切片浏览");
    mainVLayout->addWidget(lbl);
    setLayout(mainVLayout);
}

原文地址:https://www.cnblogs.com/ike_li/p/11493443.html

时间: 2024-10-27 04:30:38

Qt qss问题总结的相关文章

qt qss

QT皮肤(QSS)编程: 借用css 的灵感, Qt也支持Qt自己的css, 简称qss.同css 相似,qss的主要功能与最终目的都是能使界面的表现与界面的元素分离,即质与形的分离,就如同一个人可以在不同的时候穿上不同的衣服一样,css机制的引入,使得设计一种皮肤与界面控件分离的软件成为可能,应用程序也能像web界面那样随意地改变外观. 一.QSS语法 同css一样,他也有由一个selector与一个declaration组成,selector指定了是对哪一个控件产生效果,而declarati

Qt qss 使用

1.在资源文件建立一个qss文件.如blue.qss 2. 调用 #include "mainwindow.h" #include <QApplication> #include<QFile> #include "mainframe.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); QFile qss_file(":/res/blue.qss"

QT qss 初级介绍

这篇文章来自于QT的帮助文档,你要是看了最新版的,会发现讲解得更棒.如果你的英文不是那么好,或者说看着头疼,那还是来看此篇吧. 在此之前说一个帮助文档的特别用法,绝不仅仅是搜单词,QT的文档非常强大的,比如你要搜索怎么使用qss,可以这样搜索:how to use stylesheet 本文转载,原地址为:http://blog.csdn.net/markely/article/details/7881203 三 通过Qt4.2样式表定制程序外观 目录 1. 何为Qt样式表 2. 样式表语法基础

Qt qss浅析

qss实际就跟web的css没有差别,就是封装到Qt里面的一种说法,(具体wiki or FAQ 不过多阐述) 接下来举个例子qss 对于btn,在qss可以满足的情况下是不会去重写paintevent()的,u know. 首先了解一下Btn有三种状态: Btn{ normal hover pressed } color 文字颜色 background-color 背景颜色 alternate-background-color    备用背景颜色(一般用上面那个就好) border-color

Qt qss一些伪装态,以及margin与padding区别

伪状态    描述 :checked    button部件被选中:disabled    部件被禁用:enabled    部件被启用:focus    部件获得焦点:hover    鼠标位于部件上:indeterminate    checkbox或radiobutton被部分选中:off    部件可以切换,且处于off状态:on    部件可以切换,且处于on状态:pressed    部件被鼠标按下:unchecked    button部件未被选中 子部件    描述::down-

qt之窗口换肤(一个qss的坑:当类属性发现变化时需要重置qss)

1.相关文章 Qt 资源系统qt的moc,uic,rcc命令的使用 2.概要    毕业两年了,一直使用的是qt界面库来开发程序,使用过vs08.10.13等开发工具,并安装了qt的插件,最近在做客户端换肤功能,所以就对qt的qrc做了点儿研究,我是一个实干派(可能有点儿虚),相对于看文档来说.本文开头我就给出了两篇博客,这两篇博客对我理解qrc这个东西有很大的帮助,接下来我就简单分析下我的理解. 首先说明下qrc是qt的东西,而不属于vs,这也很容易证明,那就是vs的工程师不识别qrc文件的,

qt之窗口换肤

1.相关文章 Qt 资源系统qt的moc,uic,rcc命令的使用 2.概要    毕业两年了,一直使用的是qt界面库来开发程序,使用过vs08.10.13等开发工具,并安装了qt的插件,最近在做客户端换肤功能,所以就对qt的qrc做了点儿研究,我是一个实干派(可能有点儿虚),相对于看文档来说.本文开头我就给出了两篇博客,这两篇博客对我理解qrc这个东西有很大的帮助,接下来我就简单分析下我的理解. 首先说明下qrc是qt的东西,而不属于vs,这也很容易证明,那就是vs的工程师不识别qrc文件的,

高仿富途牛牛-组件化(三)-界面美化

目录 一.概述 二.效果展示 三.工具箱 1.布局 2.功能详解 四.组件模板工具栏 五.其他界面美化 六.使用qss文件 七.相关文章 一.概述 今天是组件化的第三篇文章了,前两篇文章主要是以功能为主,分别讲解了 高仿富途牛牛-组件化(一)-支持页签拖拽.增删.小工具和高仿富途牛牛-组件化(二)-磁力吸附,其中也不乏有一些小的bug,不过这些都不是问题. 之前的效果展示只是为了表达意思,界面是真的丑,标准的程序员审美,哈哈哈.今天这篇文章主要是对之前的程序进行了美化,并且进行了一些bug的修改

QSS美化Qt程序以及最近做的Qt项目界面

什么是QSS QSS称为Qt Style Sheets也就是Qt样式表,它是Qt提供的一种用来自定义控件外观的机制.QSS大量参考了CSS的内容,只不过QSS的功能比CSS要弱很多,体现在选择器要少,可以使用的QSS属性也要少很多,并且并不是所有的属性都可以用在Qt的所有控件上. QSS在Qt程序中的使用办法 首先将QSS写在文件中,然后利用如下的代码设置QSS: MainWidget::MainWidget(QWidget *parent) : QWidget(parent), ui(new