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

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

我试图通过使用填充有不同值的 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 文档摘录:

Note that if s is zero or negative, the behavior of this function is not defined.