我需要在代码中自动生成一些 UI 表单来显示消息内容。 我想使用 QToolbox,其中每种消息类型都有一个项目。然后,我想根据消息协议(protocol)向每个选项卡的内容添加标签和行编辑。我似乎无法以编程方式将小部件项目添加到工具箱项目中。
下面是我当前的代码段。 ui->frame 只是工具箱的容器。我稍后会担心布局。
在我的代码中,我创建了一个框架,然后创建了一些标签,并将父级设置为该框架。然后我将框架作为一个项目添加到工具箱中。
QToolBox *qtbMainToolbox = new QToolBox(ui->frame);;
qtbMainToolbox->setGeometry(0,0,2000,900);
QFrame *frm1 = new QFrame;
QLabel *lbl1 = new QLabel(frm1);
QLabel *lbl2 = new QLabel(frm1);
QLabel *lbl3 = new QLabel(frm1);
QLabel *lbl4 = new QLabel(frm1);
iRetVal - qtbMainToolbox->addItem(frm1 ,"Test");
最佳答案
您的小部件中没有可见元素;图标或任何文本。
您必须为 QLabel 设置图标或文本。
QToolBox *qtbMainToolbox = new QToolBox(ui->frame);;
qtbMainToolbox->setGeometry(0,0,2000,900);
QFrame *frm1 = new QFrame;
QLabel *lbl1 = new QLabel("Hello World",frm1);
iRetVal - qtbMainToolbox->addItem(frm1 ,"Test");
尝试上面的代码。
关于qt - 如何向 QToolbox 项目添加小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36486445/