Qt5 tabwidget-addwidget异常引发读取访问违规



创建一个选项卡小部件并在此处添加一个选项卡。。。

很抱歉我错过了这个,创建中心小部件和选项卡小部件:

QWidget* centralWidget = new QWidget();
QTabWidget* tabWidget = new QTabWidget(centralWidget);
tabWidget->setTabsClosable(false);
this->setCentralWidget(centralWidget);

QWidget* logTab = new QWidget();    
QTextEdit* logOutput = new QTextEdit();
logOutput->setReadOnly(true);
logOutput->setLineWrapMode(QTextEdit::NoWrap);
QFont* font = new QFont();
font->setFamily("Courier");
font->setPointSize(10);
QVBoxLayout* tabLayout = new QVBoxLayout();
tabLayout->addWidget(logOutput);
logTab->setLayout(tabLayout);
tabWidget->addTab(logTab, tr("Log"));

在addtab上,它给出了异常抛出的读取访问违规,调用堆栈如下:

Qt5Widgetsd.dll!QTabWidget::insertTab(int index, QWidget * w, const QIcon & icon, const QString & label) Line 472   C++
Qt5Widgetsd.dll!QTabWidget::insertTab(int index, QWidget * w, const QString & label) Line 454   C++
Qt5Widgetsd.dll!QTabWidget::addTab(QWidget * child, const QString & label) Line 399 C++

我是双重声明的,所以既有一个类成员变量,也有一个局部变量。Doh!!!!!!难怪它不起作用。

最新更新