Таблица стилей Qt игнорируется во время выполнения

Я пытаюсь установить размер индикатора переключателя с помощью таблицы стилей следующим образом:

QRadioButton::indicator { 
    width: 25px; 
    height: 25px;
}

В конструкторе это отображается правильно. Однако когда я запускаю приложение, индикаторы возвращаются к нормальному размеру. Все остальные записи в таблице стилей отображаются правильно во время выполнения. Почему эта часть таблицы стилей работает в дизайнере, а не во время выполнения? Как я могу это исправить? В моем приложении нет других таблиц стилей, которые влияют на переключатели.

Как выглядит радио-кнопка в дизайнере:

Как выглядит радио-кнопка в дизайнере

Как выглядит радио-кнопка во время выполнения:

Как эта же кнопка появляется во время выполнения

Размеры стали странными, извините. Но вы можете ясно видеть, что индикатор намного больше по сравнению с текстом на картинке, взятой у дизайнера.

1 ответ

Есть несколько вещей, которые вы должны искать при использовании конструктора.

Теперь для быстрой проверки.

//Add this lines and try again
QRadioButton *obj = new QRadioButton()

obj->setObjectName("test");

//If your using qss/css file for styling things...
#test QRadioButton::indicator { 
width: 25px; 
height: 25px;
}

Еще несколько входных данных... Размер шрифта текста, прикрепленного к QRadioButton, также проверяет изменение еще на один пиксель и проверяет, какие изменения отображаются в вашем виджете.

Надеюсь, что это поможет вам.

Другие вопросы по тегам