tableWidget动态设置数据的问题

louis_liux 2017-08-30 01:02:00
void MainWindow::init()
{
for(int i = 0;i<10;i++)
{
// ui->tableWidget->setRowCount(ui->tableWidget->rowCount()+1);
// ui->tableWidget->setItem(ui->tableWidget->rowCount()+1, 1, new QTableWidgetItem("lpsz"));
ui->tableWidget->insertRow(ui->tableWidget->rowCount());
ui->tableWidget->setItem(ui->tableWidget->rowCount(), 1, new QTableWidgetItem("lpsz"));
}
}



这样写,为啥cell里面没用任何东西呢,求大神指点啊
...全文
2514 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
louis_liux 2017-09-24
  • 打赏
  • 举报
回复
引用 5 楼 jxbinwd 的回复:
上面的回都不对,应该这样: int row = ui->tableWidget->rowCount(); ui->tableWidget->setRowCount(row + 1); ui->tableWidget->setItem(row , 1, new QTableWidgetItem("lpsz")); 楼主好好对比一下,特别是2楼,差一点,就是错的
我用的Listview,解决了 谢谢各位大侠
Lutx 2017-09-09
  • 打赏
  • 举报
回复
ui->tableWidget->setItem(ui->tableWidget->rowCount() - 1, 0, new QTableWidgetItem("lpsz")); C语言的序号是从0开始的.
萧洛 2017-09-09
  • 打赏
  • 举报
回复
上面的回都不对,应该这样: int row = ui->tableWidget->rowCount(); ui->tableWidget->setRowCount(row + 1); ui->tableWidget->setItem(row , 1, new QTableWidgetItem("lpsz")); 楼主好好对比一下,特别是2楼,差一点,就是错的
adf1237854 2017-09-09
  • 打赏
  • 举报
回复
技术牛牛牛技术牛牛牛技术牛牛牛
louis_liux 2017-08-30
  • 打赏
  • 举报
回复
引用 1 楼 qqwangfan 的回复:
这样写: for(int i = 0;i<10;i++) { int row = ui->tableWidget->rowCount()+1; ui->tableWidget->insertRow(row ); ui->tableWidget->setItem(row , 1, new QTableWidgetItem("lpsz")); } 你的当前行都没变过,需要增加当前行数才能增加得了。 void QTableWidget::insertRow(int row) Inserts an empty row into the table at row.
[code=c][/ for(int i = 0;i<10;i++) { // ui->tableWidget->setRowCount(ui->tableWidget->rowCount()+1); // ui->tableWidget->setItem(ui->tableWidget->rowCount()+1, 1, new QTableWidgetItem("lpsz")); // ui->tableWidget->insertRow(ui->tableWidget->rowCount()); // ui->tableWidget->setItem(ui->tableWidget->rowCount(), 1, new QTableWidgetItem("lpsz")); int row = ui->tableWidget->rowCount()+1; ui->tableWidget->setRowCount(row); ui->tableWidget->setItem(row , 1, new QTableWidgetItem("lpsz")); }code] 好像还是老样子啊
  • 打赏
  • 举报
回复
这样写: for(int i = 0;i<10;i++) { int row = ui->tableWidget->rowCount()+1; ui->tableWidget->insertRow(row ); ui->tableWidget->setItem(row , 1, new QTableWidgetItem("lpsz")); } 你的当前行都没变过,需要增加当前行数才能增加得了。 void QTableWidget::insertRow(int row) Inserts an empty row into the table at row.

16,173

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧