QWidget *widgetMain = new QWidget()
// 加入一个输入框和按钮
QLineEdit *lineEdit = new QLineEdit(widgetMain)
QPushButton *btn = new QPushButton(widgetMain)
// 用水平布局将这2个控件框起,并且置于界面顶部
QHBoxLayout *horLayout = new QHBoxLayout()
horLayout->addWidget(lineEdit, 4)
horLayout->addWidget(btn, 1) // 设置布局比例为4:1
// 然后添加一个全局布局控件
QVBoxLayout *verLayout = new QVBoxLayout(widgetMain)
verLayout->addLayout(horLayout)// 加入刚才的输入组,底部添加d簧
verLayout->addStretch()
// --------- 基本界面创建完成 -------------- //
// 关联处理动态创建
int nCnt = lineEdit->text().toInt() // 输入的个数
for (int i = 0 i < nCnt i++) {
QLabel *label = new QLabel(widgetMain)
// 插入之前的布局
label->setText(QString("动态创建label %1).arg(i + 1))
verLayout->insertWidget(1 + i, label)
}
// 大功告成
// 备注,以上代码纯手工,写法或其他错误请自行修改,仅作参考
通过ui->printAgeingTableView->setIndexWidget(standardItemModel->index(i, 5), interval)
添加控件后,获取内容。
获取内容方式:将控件还原,然后再去拿取,不能当做QStandardItem进行 *** 作,否则无法拿到内容。
((QLabel *)ui->printAgeingTableView->indexWidget(model->index(var,1)))->text()
这里原本控件是QLabel,还原后再拿取。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)