无法更新QTableWidget中的字符串

cannot update string in QTableWidget

本文关键字:字符串 QTableWidget 更新      更新时间:2023-10-16

例如,我想将表中的2.16更改为2,16。这是我的代码

{
    .......
    connect(ui.tableWidget, SIGNAL(itemChanged(QTableWidgetItem*)), this, SLOT(change_string(QTableWidgetItem*)));
}
void MyClass::change_string(QTableWidgetItem* input_item)
{
    if (input_item->text() != "") {
        if (input_item->text().contains(".", Qt::CaseSensitive)) {
            input_item->text().replace(".", ",", Qt::CaseSensitive);
        }
    }
}

我的代码运行正常,我已经调试好了,实现了input_item->text().replace(".", ",", Qt::CaseSensitive);行。但在那之后,该表仍然显示2.16,而不是2.16。我不知道为什么?替换字符串后,我是否需要刷新表或类似的内容?

您的代码中没有setText。试试这个:

QString text = input_item->text().replace(".", ",", Qt::CaseSensitive);
input_item->setText(text);