Search code examples
qttoolbox

How to add widgets to QToolbox item


I need to auto generate some UI forms in code to display message contents. I want to use QToolbox, with an item for each message type. I then want to add labels and line edit to the contents of each tab, depending on the message protocol. I cannot seem to programaticaly add widget items to the toolbox item.

Below is my current code segment. The ui->frame is just a container for the toolbox. I will worry later about layout.

In my code, I create a frame and then some labels with parent set to the frame. Then I add the frame as an item to the toolbox.

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");

Solution

  • There is no visible element in your widgets; icon or any text.

    You have to Set icon or Text to Your 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");
    

    try above code.