Как писал pnezis, вы, вероятно, хотите переопределить минимальный размер по умолчанию, рассчитанный кнопкой.Вот способ, которым вы можете сделать это, избегая выбора произвольного размера, который может не работать при различных условиях (другой шрифт или размер шрифта, стиль пользовательского интерфейса и т. Д.):
QWidget* parent = /* some widget */
auto button = new QPushButton(QLatin1String("X"), parent);
auto textSize = button->fontMetrics().size(Qt::TextShowMnemonic, button->text());
QStyleOptionButton opt;
opt.initFrom(button);
opt.rect.setSize(textSize);
button->setMinimumSize(
button->style()->sizeFromContents(QStyle::CT_PushButton,
&opt,
textSize,
button));
Вышеприведенное было адаптировано и упрощено изСобственный код QPushButton.Вы можете посмотреть на источник QPushButton :: sizeHint для всех деталей.