在QtCreater中,我在项目中添加了一个表.在我的代码中,我生成一些数据输出到表中.我想在每一行中添加一个QCheckBox以允许选择行.表的所有内容都左对齐,如何只将每行的第一列中的这些复选框与中心对齐?
ui->data_table->setCellWidget(rowCount,new QCheckBox);
解决方法
我通常使用布局和容器小部件.这是一个丑陋的解决方案,但它有效:
QWidget * w = new QWidget(); QHBoxLayout *l = new QHBoxLayout(); l->setAlignment( Qt::AlignCenter ); l->addWidget( <add your checkBox here> ); w->setLayout( l ); ui->data_table->setCellWidget(rowCount,w);
所以基本上你会有:
Table Cell -> Widget -> Layout -> CheckBox
如果您需要访问表格中的复选框,则必须考虑它.