我试图通过使用填充了不同值的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);
任何有关如何做的帮助都将不胜感激,谢谢!
答案 0 :(得分:1)
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为零或负数,则此函数的行为为 没有定义。