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

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

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

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

Ответ 1

Как насчет

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

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

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

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

Ответ 2

С https://qt-project.org/doc/qt-5/qabstractbutton.html#iconSize-prop

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

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

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

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

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

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