假设我在 QComboBox 的每一行上都填充了一个数字。线条在垂直方向上非常接近。如何控制垂直距离?
问问题
7330 次
1 回答
6
如果您只想更改行高(而不是更改字体大小),请创建一个新的委托类:
class RowHeightDelegate : public QItemDelegate
{
Q_OBJECT
public:
QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const
{
return QSize(1, 40); // the row height is now 40
}
};
并将其设置为您的组合框:
ui->comboBox->setItemDelegate(new RowHeightDelegate());
编辑:
上面的示例显示了如何更改下拉列表的行高。字体大小没有改变。如果要更改整个组合框的字体大小(包括下拉列表),请创建具有所需大小的新字体并将其设置为组合框:
QFont font;
font.setPointSize(font.pointSize() + 10);
ui->comboBox->setFont(font);
或者使用 Qt Designer 或 Qt Creator 来改变字体大小。
于 2010-09-05T11:52:07.137 回答