QT程序使用插入时会崩溃

Qt program crashes when using insertText

本文关键字:崩溃 插入 程序 QT      更新时间:2023-10-16

我正在尝试使用 QPlainTextEdit在QT程序中显示一些信息,我将其包含在QT Designer中。但是当我尝试用

显示一些东西时
pTextEdit->insertPlainText("text");

我的程序在执行时崩溃。当我尝试自己声明对象

QTextEdit *txt = new QTextEdit();

它也不起作用。

唯一工作的时间是我在main.cpp中创建对象时。但是我需要在我的小部件中不在另一个窗口中显示信息。

任何帮助都将不胜感激。

编辑:

工作:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    QTextEdit *txt = new QTextEdit();
    txt->setText("Hello, world!");
    txt->append("Appending some text…");
    txt->show();
    return a.exec();
}

不工作(QT Designer创建的对象):

MainWindow::MainWindow( QWidget *parent ) :
... initialization list ...
{
    ui->setupUi( this );
    console->setPlainText("text");
    .. other stuff ...
}

考虑到insertPlainText在当前光标位置插入文本,因此我认为如果未设置光标,您可能会遇到问题(例如,没有焦点)。您可以尝试:

txt->setPlainText("your text");

或如果要附加:

txt->setPlainText(txt->toPlainText() + "appended text");