1 如果里面没有加入控件,那我们就简单的用
customContextMenuRequested(QPoint) 这个信号对应的槽 QTableWidgetItem* item = ui->tableWidget->itemAt(pos); m_nCurrentRow = item->row();
2 如果里面有控制,比如pushbutton,那我们这时候如果点击的是pushbutton,上面的方法就不对了,这时候要这样做
QPoint pos1 = ui->tableWidget->viewport()->mapFromGlobal(QCursor::pos()); QModelIndex item1 = ui->tableWidget->indexAt(pos1); m_nCurrentRow = item1.row();
3 如果是点击了pushbutton,如何获取行呢?
QPushbutton *_cBox = dynamic_cast<QPushbutton *>(this->sender());
int x = _cBox->frameGeometry().x();
int y = _cBox->frameGeometry().y();
QModelIndex index = ui->tableWidget->indexAt(QPoint(x,y));
int row = index.row();
int column = index.column();

3万+

被折叠的 条评论
为什么被折叠?



