QTableWidget *tableWidget = new QTableWidget(10,5,this); tableWidget->resize(200,200); tableWidget->setItem(0,0,new QTableWidgetItem("Jan")); tableWidget->setItem(1,0,new QTableWidgetItem("Feb")); tableWidget->setItem(2,0,new QTableWidgetItem("Mar")); tableWidget ->setContextMenuPolicy(Qt::CustomContextMenu); connect(tableWidget, &QWidget::customContextMenuRequested, [=](){ qDebug()<<"-------"; QMenu*m_pContextMenu = new QMenu(); QAction*m_pActionDel = new QAction(this); m_pActionDel->setText(QString("bg")); m_pContextMenu->addAction(m_pActionDel); connect(m_pContextMenu,&QMenu::triggered,[=](){ //当前选中item tableWidget->currentItem()->setBackgroundColor(Qt::red); //第一个 tableWidget->itemAt(0,0)->setBackgroundColor(Qt::yellow); }); m_pContextMenu->exec(QCursor::pos()); });