在Qt 4.7中,你可以通过以下步骤获取QTableWidget所在行的数据:
- 首先,连接按钮的点击信号到一个槽函数。
- 在槽函数中,使用
sender()
方法获取发送信号的按钮对象。 - 使用
qobject_cast
将按钮对象转换为QWidget
类型,并通过parentWidget()
方法获取该按钮所在的父部件。 - 检查父部件是否是QTableWidget类型。如果是,则可以使用
item(row, column)
方法来获取特定单元格的QTableWidgetItem对象。 - 从QTableWidgetItem对象中提取所需的数据。
下面是一个简单的示例代码:
void MainWindow::onButtonClicked()
{
QPushButton* button = qobject_cast<QPushButton*>(sender());
if (button) {
QWidget* parentWidget = button->parentWidget();
QTableWidget* tableWidget = qobject_cast<QTableWidget*>(parentWidget);
if (tableWidget) {
int row = tableWidget->row(button); // 获取按钮所在的行
QTableWidgetItem* item = tableWidget->item(row, 0); // 获取第一列对应行的QTableWidgetItem
if (item) {
QString data = item->data(Qt::DisplayRole).toString(); // 获取单元格数据
qDebug() << "Data: " << data;
}
}
}
}
请注意,这只是一个基本示例,你可能需要根据实际情况进行适当修改和扩展。
内容由零声教学AI助手提供,问题来源于学员提问