【发布时间】:2013-09-27 08:27:58
【问题描述】:
每个人
我在用第一行的可编辑项目填充 Qtablewidget 时遇到问题,然后
目前为止,其余行的不可编辑项是我的实现
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QTableWidgetItem>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QTableWidgetItem *item= NULL;
for(int row=0; row < ui->tableWidget->rowCount(); row++)
{
for (int col=0; col< ui->tableWidget->columnCount(); col++)
{
if(row == 1)
{
item = new QTableWidgetItem;
item->setFlags(Qt::ItemIsEditable | Qt::ItemIsEnabled);
ui->tableWidget->setItem(row,col,item);
}else{
item = new QTableWidgetItem;
item->setFlags(Qt::NoItemFlags);
ui->tableWidget->setItem(row,col,item);
}
}
}
}
MainWindow::~MainWindow()
{
delete ui;
}
【问题讨论】:
-
你有什么问题?
-
我想让我的表像 MS 访问表,这意味着用户有能力从一行到行无限编辑行,所以用户不能传递到第二行,与填充行零和一。我希望你现在清楚
-
你的代码有什么行为?表格是否已填充?要做的第一件事:如果您需要零行和一个可编辑的行,这就是您的
if需要为if(row == 1 || row==0)的方式;第二件事:您需要一些机制来在上一行完成编辑时启用下一行的项目。
标签: qtablewidget enum-flags qtablewidgetitem