Qt - 如何使用 QComboBox 更改 QTextEdit 的字体大小

Qt - How to change a QTextEdit's font size with a QComboBox

本文关键字:字体 QTextEdit 更改 何使用 QComboBox Qt      更新时间:2023-10-16

im 尝试通过使用填充不同值的 QComboBox 来更改 QTextEdit 的字体大小,因此例如,当我在 QComboBox 中选择一个值时,它会将 QTextEdits 大小更改为我选择的值。我在QComboBox中有值,但我不知道如何将QTextEdit的值更改为我选择的值。

以下是我用来用值填充QComboBox的代码:

for (int i = 0; i < 102; i+=2){
  QStringList list = (QStringList()<<QString::number(i));
  ui->combobox->addItem(list);

任何关于从这里做什么的帮助将不胜感激,谢谢!

QTextEdit* textEdit = new QTextEdit(......);
QComboBox* fontSizeCombo = new QComboBox(....);
for (int i = 1; i < 102; i += 2) {
  fontSizeCombo->addItem(QString::number(i));
}
connect(fontSizeCombo, SIGNAL(currentIndexChanged(QString), SLOT(changeFontSize(QString));
void MyClass::changeFontSize(const QString& selected)
{
  textEdit->setFontPointSize(selected.toInt());
}

不需要为每个项目附加QStringList

不要将字体大小设置为 0。摘自Qt文档:

请注意,如果 s 为零或负数,则此函数的行为为 未定义。