希望是一个非常快速的问题。在我的一个函数中,我想在运行时为 QTabWidget 生成“x”个选项卡(“x”由用户提供)。我知道我必须为 QTabWidget 使用 addTab 函数(如果我错了请纠正我),但我不确定我应该如何使用它。我不清楚 qt 文档。
我曾尝试使用以下命令仅添加 1 个选项卡作为测试,但它导致程序崩溃:
ui->checkBoxTabArea->addTab(ui->checkBoxTabArea,"tab2");
既然我明显错了,有人可以帮我使用这个功能吗?我觉得我只是将错误的参数传递给了 addTab。
编辑:程序启动时 checkBoxTabArea 已经有 1 个选项卡(如果有帮助的话)。
最佳答案
如果您查看文档,addTab 函数是这样说的:
int QTabWidget::addTab ( QWidget * page, const QString & label )
Adds a tab with the given page and label to the tab widget, and returns the index of the tab in the tab bar.
所以您传递的参数不应该是您想要添加选项卡的 TabWidget,而应该是您想要添加作为选项卡的小部件。
你应该做的是:
QLabel *myLabel = new QLabel("Hello World", this);
ui->checkBoxTabArea->addTab(myLabel, "My Label Tab");
这会将单个选项卡添加到包含 myLabel 的选项卡小部件。
关于c++ - 关于使用 QTabWidget 'addTab' 函数的快速问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6699417/