C++ 如何在QTabWidget的新选项卡中创建新的QPlainTextEdit小部件?

C++ 如何在QTabWidget的新选项卡中创建新的QPlainTextEdit小部件?,c++,qt,widget,qt4,qtabwidget,C++,Qt,Widget,Qt4,Qtabwidget,我正在从事一个多选项卡文本编辑器项目。尝试在“新建”选项卡中显示文本文件时出现问题。 当打开一个文本文件时,我希望程序用一个新的QPlainTextEdit小部件在一个新的选项卡中显示内容,并且不要修改旧的选项卡及其内容 我的问题是: 当程序打开一个新的文本文件时,它将创建一个新选项卡,并将其文本更改为文件名,但它会在第一个选项卡及其明文编辑小部件中显示文件内容。如何修复它 我的代码: void MainWindow::on_btn_Open_triggered() { FilePath =

我正在从事一个多选项卡文本编辑器项目。尝试在“新建”选项卡中显示文本文件时出现问题。 当打开一个文本文件时,我希望程序用一个新的QPlainTextEdit小部件在一个新的选项卡中显示内容,并且不要修改旧的选项卡及其内容

我的问题是: 当程序打开一个新的文本文件时,它将创建一个新选项卡,并将其文本更改为文件名,但它会在第一个选项卡及其明文编辑小部件中显示文件内容。如何修复它

我的代码:

void MainWindow::on_btn_Open_triggered()
{
  FilePath = QFileDialog::getOpenFileName(this, "Open File", "./", "All Files(*.*)");
  QFile GetFile(FilePath);
  QFileInfo FileMetaData(FilePath);

  if (!GetFile.open(QIODevice::ReadOnly|QIODevice::Text))
  {
     QMessageBox::information(0, "ERROR", "Cannot open this file.");
  }
  else
  {
     int clickTimes = 1;
     QTextStream InputData(&GetFile);
     QPlainTextEdit *plainTextEdit = new QPlainTextEdit;
     ui->tabWidget->insertTab(clickTimes, plainTextEdit, FileMetaData.fileName());
     ui->tabWidget->setCurrentIndex(clickTimes);
     ui->plainTextEdit->setPlainText(InputData.readAll());
     clickTimes++;
  }
}

我认为,你需要更换

ui->plainTextEdit->setPlainText(InputData.readAll());

plainTextEdit->setPlainText(InputData.readAll());

将“用户界面->明文编辑->`更改为
明文编辑->