Как изменить IconSize QToolButton

Как изменить IconSize QToolButton.

button1->setIcon(QIcon("download.jpg"));
button1->setFixedSize(100,100);

При использовании вышеуказанного кода размер кнопки меняется, но значок внутри кнопки не меняется.

2 ответа

Решение

Как насчет

button1->setFixedSize(100,100);
button1->setIconSize(QSize(100, 100));

Если ваша кнопка лежит на панели инструментов, используйте

toolBar->setIconSize(QSize(100, 100));

вместо изменения размера иконки кнопки. Если вы хотите, чтобы на панели инструментов были разные размеры, измените их на setFixedSize(), Конечно, максимальный из них должен быть размером иконки QToolBar.

Из https://qt-project.org/doc/qt-5/qabstractbutton.html

Вы можете попробовать использовать

button1->setIconSize(QSize(100, 100));

Или вы можете дать button1 размер в качестве аргумента,

button1->setIconSize(button1->size());

Единственным недостатком этого метода является то, что значки не будут масштабироваться более чем на 100% от их первоначального размера. Если вы хотите, чтобы значки были увеличены, вы можете попробовать переопределить QToolButton::setIconSize метод или, как быстрое и грязное исправление, измените размеры изображений с помощью графического редактора.

В случае использования QToolBar используйте QToolBar::setIconSize метод, который устанавливает максимальный размер значков на панели инструментов. Сами значки могут быть разных размеров.

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