From 23a6da5d3f14108f29eaf7614a036aea154b10aa Mon Sep 17 00:00:00 2001 From: zcy <290198252@qq.com> Date: Mon, 14 Dec 2020 23:48:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8B=86=E5=88=86=E6=A1=86=E6=9E=B6=E7=9A=84cs?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Qss.cpp | 46 +++++++++++++++++++++----------- css/QssMainWindow.css | 10 +++++++ css/QssTitleBar.css | 61 +++++++++++++++++++++++++++++++++++++++++++ css/qss.css | 13 ++++----- qss.qrc | 2 ++ 5 files changed, 111 insertions(+), 21 deletions(-) create mode 100644 css/QssMainWindow.css create mode 100644 css/QssTitleBar.css diff --git a/Qss.cpp b/Qss.cpp index 87a32c0..dd5288e 100644 --- a/Qss.cpp +++ b/Qss.cpp @@ -34,20 +34,19 @@ QssTtitleBar::QssTtitleBar(QWidget *parent , m_type(type), m_Main(nullptr) { - setObjectName("titlebar"); - - m_closeBtn = new QPushButton(this);// - m_closeBtn->setObjectName("titlebarclosebtn");//css + setObjectName("qssTitleBar"); + m_closeBtn = new QPushButton(this); + m_closeBtn->setObjectName("titlebarclosebtn"); m_closeBtn->setToolTip(QString::fromLocal8Bit("")); m_closeBtn->setVisible(m_type & QTitleBar_Button_Close); m_minBtn = new QPushButton(this); - m_minBtn->setObjectName("titlebarminbtn");//css + m_minBtn->setObjectName("titlebarminbtn"); m_minBtn->setToolTip(QString::fromLocal8Bit("最大化")); m_minBtn->setVisible(m_type & QTitleBar_Button_Min); m_restoreBtn = new QPushButton(this);// - m_restoreBtn->setObjectName("titlebarrestorebtn");//css + m_restoreBtn->setObjectName("titlebarrestorebtn"); m_restoreBtn->setToolTip(QString::fromLocal8Bit("")); m_restoreBtn->setVisible(m_type & QTitleBar_Button_Restore); @@ -56,13 +55,11 @@ QssTtitleBar::QssTtitleBar(QWidget *parent , m_maxBtn->setToolTip(QString::fromLocal8Bit("")); m_maxBtn->setVisible(m_type & QTitleBar_Button_Max); - m_iconBtn = new QPushButton(this);// - m_iconBtn->setObjectName("titlebaricon");//css + m_iconBtn = new QPushButton(this); + m_iconBtn->setObjectName("titlebaricon"); - m_titlebarTitle = new QLabel(this);// - m_titlebarTitle->setObjectName("titlebartitle");//css - m_titlebarTitle->setStyleSheet("color: white;"); - m_titlebarTitle->setFont(QFont("微软雅黑", 16)); + m_titlebarTitle = new QLabel(this); + m_titlebarTitle->setObjectName("titlebartitle"); QHBoxLayout* hBox = new QHBoxLayout(this); hBox->setMargin(0); @@ -85,7 +82,7 @@ QssTtitleBar::QssTtitleBar(QWidget *parent , connect(m_restoreBtn, SIGNAL(clicked()), this, SLOT(onMaxOrRestore())); m_iconBtn->installEventFilter(this);//m_iconLab - installEventFilter(this);// + installEventFilter(this); m_rcValid = QApplication::desktop()->availableGeometry(); this->setFixedHeight(37); @@ -93,7 +90,16 @@ QssTtitleBar::QssTtitleBar(QWidget *parent , Qt::MSWindowsFixedSizeDialogHint); this->setGeometry(parent->geometry().x(),parent->geometry().y(),0,0); m_rcNormal = parentWidget()->geometry(); - this->setStyleSheet("font-size:30px;"); + + QFile file(":/qss/css/QssTitleBar.css"); + if (!file.open(QIODevice::ReadOnly)){ + qDebug()<<"error bar"; + exit(0); + } + QTextStream in(&file); + QString css = in.readAll(); + this->setStyleSheet(css); + } QssTtitleBar::~QssTtitleBar() @@ -274,7 +280,17 @@ QssMainWindow::QssMainWindow(QWidget *parent/* = 0*/, Qt::WindowFlags flags/* = m_rcNormal = m_frame->geometry(); m_rcNormalCentral = this->geometry(); connect(this->titleBar(),SIGNAL( OnMaxOrRestore(bool )),this,SLOT(OnMaxOrRestore(bool))); + QFile file(":/qss/css/QssMainWindow.css"); + if (!file.open(QIODevice::ReadOnly)){ + qDebug()<<"error bar"; + exit(0); + } + QTextStream in(&file); + QString css = in.readAll(); + //this->setStyleSheet(css); + + return; } QssMainWindow::~QssMainWindow() @@ -1376,7 +1392,7 @@ QssDockWidget::QssDockWidget(QWidget *parent) m_frame = new QFrame(parent); m_frame->setObjectName("dialog");//css m_frame->setAttribute(Qt::WA_TranslucentBackground);/** padding css boder��*/ - m_frame->setWindowFlags(Qt::Dialog | Qt::FramelessWindowHint + m_frame->setWindowFlags(Qt::Dialog | Qt::FramelessWindowHint); m_frame->setMouseTracking(true); m_frame->installEventFilter(this); diff --git a/css/QssMainWindow.css b/css/QssMainWindow.css new file mode 100644 index 0000000..3b55784 --- /dev/null +++ b/css/QssMainWindow.css @@ -0,0 +1,10 @@ + +QMainWindow{ + border: none; + background: rgb(245, 252, 252); + font-family:"微软雅黑"; + font-style: normal; +} + + + diff --git a/css/QssTitleBar.css b/css/QssTitleBar.css new file mode 100644 index 0000000..65e5ff7 --- /dev/null +++ b/css/QssTitleBar.css @@ -0,0 +1,61 @@ +QWidget#qssTitleBar{ + color: white; + background: rgb(7,71,166); + border: 0px; + margin: 0px; +} +QWidget#qssTitleBar > QPushButton#titlebaricon{ + background: rgb(7,71,166); + width: 30px; + height:30px; +} +QWidget#qssTitleBar > QLable#titlebartitle{ + font-family:"微软雅黑"; + color: white; + font-size: 30px; +} +QWidget#qssTitleBar>QPushButton#titlebarclosebtn{ + image: url(":/qss/icon/btn_close_down.svg"); + background: rgb(7,71,166); + width: 40px; + height:30px; + margin-left: 1px; +} +QWidget#qssTitleBar >QPushButton#titlebarmaxbtn{ + background: rgb(7,71,166); + width: 40px; + height:30px; + margin-left: 1px; + image: url(":/qss/icon/btn_max_normal.svg"); + +} +QWidget#qssTitleBar >QPushButton#titlebarclosebtn:enabled:hover{ + background: red; +} +QWidget#qssTitleBar >QPushButton#titlebarminbtn{ + image: url(":/qss/icon/btn_mini_down.svg"); + background: rgb(7,71,166); + width: 40px; + height:30px; + margin-left: 1px; +} +QWidget#qssTitleBar >QPushButton#titlebarminbtn:enabled:hover{ + background: rgb(187, 212, 238); +} +QWidget#qssTitleBar >QPushButton#titlebarrestorebtn{ + image: url(":/qss/icon/btn_max_normal.svg"); + background: rgb(187, 212, 238); + width: 40px; + height:30px; + margin-left: 1px; +} +QWidget#qssTitleBar >QPushButton#titlebarrestorebtn:enabled:hover{ + background: rgb(187, 212, 238); +} +QWidget#qssTitleBar >QPushButton#btn_serial:!enabled { + background: rgb(180, 180, 180); + color: white; +} +QWidget#qssTitleBar >QPushButton#titlebarmaxbtn:enabled:hover{ + background: rgb(100, 160, 220); +} diff --git a/css/qss.css b/css/qss.css index 32a17ae..c2449f3 100644 --- a/css/qss.css +++ b/css/qss.css @@ -100,12 +100,7 @@ QFrame#window{ background: rgba(244,245,247,100); } -QWidget#titlebar{ - color: white; - background: rgb(7,71,166); - border: 0px; - margin: 0px; -} + QWidget#remoteWidget { border-top-right-radius: 10px; border-bottom-right-radius: 10px; @@ -170,6 +165,12 @@ QMenu { QssMessageBox#messagebox{ background: rgb(0, 0, 250); } +QWidget#titlebar{ + color: white; + background: rgb(7,71,166); + border: 0px; + margin: 0px; +} QPushButton#titlebaricon{ /* image: url(:/qss/icon/logo.png);*/ background: rgb(7,71,166); diff --git a/qss.qrc b/qss.qrc index 0f3e910..3802de5 100644 --- a/qss.qrc +++ b/qss.qrc @@ -46,5 +46,7 @@ icon/string.svg icon/最大化.svg icon/missing.svg + css/QssMainWindow.css + css/QssTitleBar.css