Qt tableWidget按名称或别名引用列

时间:2016-03-09 22:13:48

标签: c++ qt qtablewidget

我是Qt的新手,只有一点点C ++经验,正在开发桌面应用程序。

我正在使用tableWidget,我的代码通过(行,列)指针填充单元格。目前这没关系,但我可以看到,如果我需要添加或移动一个列,我将有一个快乐的时间修复通过我的代码散布的所有指针。

有没有办法为列号使用别名并通过此别名引用单元格?例如,而不是

ui->tableWidget1->setItem(0, 3, new QTableWidgetItem(ui->lblWeight->text()));

我可以拥有更像

的东西吗?
ui->tableWidget1->setItem(0, "colWeight", new QTableWidgetItem(ui->lblWeight->text()));

其中" colWeight"已被分配到第3列?

2 个答案:

答案 0 :(得分:2)

如果别名在运行时没有改变,我会使用枚举而不是变量。

enum Column
{
    ColumnA = 0,
    ColumnB = 1,
    ColumnC = 2
};

ui->tableWidget1->setItem(0, ColumnA, new QTableWidgetItem(ui->lblWeight->text()));

答案 1 :(得分:1)

使用colWeight作为变量:

int colWeight = 3; // Your column indicator
...
ui->tableWidget1->setItem(0, colWeight, new QTableWidgetItem(ui->lblWeight->text()));