Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: KrupaKarlo от Май 05, 2015, 14:24



Название: QToolBar stylesheet
Отправлено: KrupaKarlo от Май 05, 2015, 14:24
Добрый день! Столкнулся со следующий проблемой. Задаю stylesheet для QToolBar. Все хорошо кроме случая когда QAction в состоянии checked

Вот код который я добавил в стандартное приложение с QMainWindow

Код:
#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <QToolButton>
#include <QCommonStyle>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    ui->mainToolBar->setStyleSheet("background-color: qlineargradient(spread:pad, x1:1, y1:0.455686, x2:1, y2:1, stop:0 rgba(127, 127, 127, 255), stop:1 rgba(96, 96, 96, 255)); color:rgb(255, 255, 255);");
    ui->mainToolBar->addAction("TEST1")->setCheckable(true);
    ui->mainToolBar->addAction("TEST2")->setCheckable(true);
    ui->mainToolBar->addAction("TEST3")->setCheckable(true);
}

MainWindow::~MainWindow()
{
    delete ui;
}


Помогите разобраться плз =)


Название: Re: QToolBar stylesheet
Отправлено: poru от Май 13, 2015, 12:34
Для данного случая нужно перечислить несколько состояний, но ключевым является - "border: none":
Код
C++ (Qt)
   ui->mainToolBar->setStyleSheet(
               "QToolBar {"
               "background-color: qlineargradient(spread:pad, x1:1, y1:0.455686, x2:1, y2:1, stop:0 rgba(127, 127, 127, 255), stop:1 rgba(96, 96, 96, 255));"
               "color:rgb(255, 255, 255);"
               "}"
               "QToolButton { "
               "border: none;"
               "padding: 5;"
               "}"
               "QToolButton:hover { "
               "background-color: white;"
               "}"
               "QToolButton:checked:pressed { "
               "background-color: white;"
               "}"
               "QToolButton:pressed { "
               "background-color: red;"
               "}"
               "QToolButton:checked { "
               "background-color: red;"
               "}"
               );
 


Название: Re: QToolBar stylesheet
Отправлено: KrupaKarlo от Май 18, 2015, 16:22
Спасибо!