关于使用QTabWidget'addTab'功能的快速问题

时间:2011-07-14 20:16:38

标签: c++ qt qtabwidget

希望是一个非常快速的问题。在我的一个函数中,我想在运行时为QTabWidget生成一个'x'数量的选项卡('x'由用户提供)。我知道我必须为QTabWidget使用addTab函数(如果我错了就纠正我),但我不确定我应该如何使用它。 qt文档对我来说不清楚。

我已尝试使用以下命令仅添加1个选项卡作为测试,但它导致程序崩溃:

ui->checkBoxTabArea->addTab(ui->checkBoxTabArea,"tab2");

因为我显然是错的,有人可以帮我使用这个功能吗?我觉得我只是将错误的参数传递给addTab。

编辑:checkBoxTabArea在程序启动时已有1个选项卡(如果有任何帮助)。

1 个答案:

答案 0 :(得分:5)

如果您查看文档,addTab函数会说:

  

int QTabWidget :: addTab(QWidget * page,const QString& label)

     

添加带有给定页面和标签的选项卡到选项卡小部件,和   返回选项卡栏中选项卡的索引。

因此,您传递的参数不应该是要添加标签的TabWidget,而应该是您想要添加作为标签的小部件。< / p>

你应该做的是:

QLabel *myLabel = new QLabel("Hello World", this);
ui->checkBoxTabArea->addTab(myLabel, "My Label Tab");

这会在标签窗口小部件中添加一个标签,其中包含myLabel。