代码之家  ›  专栏  ›  技术社区  ›  Kasun Karunarathna

水平对齐动态创建的控件qt c++

  •  1
  • Kasun Karunarathna  · 技术社区  · 7 年前

    for(int i=0;i<newList.size();i++)
    {
          QlineEdit *a=new QLineEdit();
          QLabel *b= new QLabel();
    
          ui->verticalLayout->addWidget(a);
          ui->verticalLayout_2->addWidget(b);
    
          b->setText(newList[i]);
    }
    

    标签和行编辑都会生成,字符串列表的项目会在标签中描述!但我面临的问题是,对应于每个行编辑的标签并没有与该行编辑水平对齐!我怎样才能纠正这个问题?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Sven Arno Jopen    7 年前

    您可以将LineEdit和Label放在QFrame中,然后将QFrame放在垂直布局中。或者使用水平布局进行LineEdit和Label,并将其放置到垂直布局中。

    for(int i=0;i<newList.size();i++)
    {
          QFrame *f = new QFrame();  
          QlineEdit *a=new QLineEdit( f );
          QLabel *b= new QLabel( f );
    
    
          ui->verticalLayout->addWidget(f);
    
          b->setText(newList[i]);
    }
    

    Exampels for different ways in comparison