我正在创建一个带有表格和“添加行”按钮的简单应用程序。使用 Qt Creator 我认为我可以做这样的事情:
QObject::connect(ui->addRowButton, SIGNAL(clicked()),
ui->moneyTableWidget, SLOT(insertRow(1)));
但是我不能。我真的是 Qt 的新手,我可能是错的,但我认为问题在于 insertRow 不是 QTableWidget 的 SLOT 方法...
如何实现行插入?
最佳答案
在您的类的方法中插入该行。试试这个
class TableDialog : public QDialog
{
Q_OBJECT
public:
TableDialog(QWidget *parent = 0);
private slots:
void addRow();
private:
QTableWidget *tableWidget;
QDialogButtonBox *buttonBox;
};
和(部分)实现:
TableDialog::TableDialog(QWidget *parent) : QDialog(parent) {
tableWidget = new QTableWidget(10, 2);
/* ..... */
connect(addRowButton, SIGNAL(clicked()), this, SLOT(addRow()));
/* ..... */
}
void TableDialog::addRow() {
int row = tableWidget->rowCount();
tableWidget->insertRow(row);
/* ..... */
}
关于C++,从 QTableWidget 添加/删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4920706/