本文整理汇总了C++中QPushButton::setAutoExclusive方法的典型用法代码示例。如果您正苦于以下问题:C++ QPushButton::setAutoExclusive方法的具体用法?C++ QPushButton::setAutoExclusive怎么用?C++ QPushButton::setAutoExclusive使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QPushButton
的用法示例。
在下文中一共展示了QPushButton::setAutoExclusive方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: fm
QPushButton * ControlUnitDialog::addFunction(QString title, QIcon icon, bool checkable)
{
QPushButton *button = new QPushButton(selection_groupBox);
selButtons_verticalLayout->insertWidget(_selButtons.size(), button);
button->setFixedWidth(160);
button->setFixedHeight(35);
button->setCheckable(checkable);
button->setAutoExclusive(checkable);
// Icon:
button->setIconSize(QSize(22, 22));
button->setIcon(icon);
// Font:
QFont font = button->font();
font.setFamily(QApplication::font().family());
font.setBold(false);
font.setPixelSize(13); // 10pts
button->setFont(font);
// Text: prepend/append spaces to achieve proper icon positions:
QFontMetrics fm(font);
title = title.trimmed();
int targetstrsize = button->size().width() - button->iconSize().width() - 18;
int barestrsize = fm.size(Qt::TextShowMnemonic, title).width();
if (barestrsize < targetstrsize)
{
double spacesize = fm.size(Qt::TextShowMnemonic, " ").width();
int nspaces = static_cast<int>((targetstrsize - barestrsize) / spacesize + 0.5);
title.prepend( QString( nspaces/2, ' ' ) );
title.append( QString( nspaces - nspaces/2, ' ' ) );
}
button->setText(title);
// Save, show and return button:
button->show();
_selButtons.push_back(button);
return button;
}