Как получить цвета QPalette для состояния css::hover?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как получить цвета QPalette для состояния css::hover?

Сообщение Anonymous »

Я пишу этот минимальный пример, который печатает цвета QPalette для «состояний», «по умолчанию», наведения и отключенного, но для наведения > заявить, что цвета были получены неправильно.

Код: Выделить всё

int main(int argc, char *argv[])
{
QApplication a(argc, argv);

QWidget* widget = new QWidget();
widget->setObjectName("widget");
QSpinBox* spinBox = new QSpinBox();
spinBox->setObjectName("spinBox");
QTextEdit* textEdit = new QTextEdit();
textEdit->setFixedSize(60, 20);
QHBoxLayout* layout = new QHBoxLayout(widget);
layout->addWidget(spinBox);
layout->addWidget(textEdit); // random widget to have something else to grab focus

widget->setStyleSheet(R"(
#spinBox
{
background-color: rgba(1, 1, 1, 255);
color: rgba(1, 1, 1, 255);
}
#spinBox::hover
{
background-color: rgba(2, 2, 2, 255);
color: rgba(2, 2, 2, 255);
}
#spinBox::disabled
{
background-color: rgba(3, 3, 3, 255);
color: rgba(3, 3, 3, 255);
}
)");
widget->show();

static const auto colorToString = [](const QColor& color) -> QString
{
return QString("rgba: %1, %2, %3, %4").arg(color.red()).arg(color.green()).arg(color.blue()).arg(color.alpha());
};

static const auto printPallete = [](const QPalette& pal)
{
#define qq qDebug().noquote().nospace()
qq 

Подробнее здесь: [url]https://stackoverflow.com/questions/79249651/how-to-retrieve-the-qpalette-colors-for-the-css-hover-state[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»