QTableView增加QPushButton、QToolButton等控件以及實現點擊事件


QTableView增加QPushButton、QToolButton等控件:

 

       QToolButton *EditBtn=new QToolButton();  
        EditBtn->setIcon(QIcon(":/Icon/edit.png"));
        EditBtn->setIconSize(QSize(15,15));
        EditBtn->setStyleSheet("background:transparent;border:0px;");
        EditBtn->setIcon(QIcon(":/Icon/edit.png"));//增加圖片顯示
        EditBtn->setObjectName(QString::number(UserList.at(i).Id));//關聯QToolButton名字,方便點擊事件具體到數據行
        ui->mainTable->setIndexWidget(model->index(1 , 4), EditBtn);
       connect(EditBtn , SIGNAL(clicked()) , this , SLOT(EditUser()));

 

點擊事件:

 QToolButton *senderObj=qobject_cast<QToolButton*>(sender());
    if(senderObj == nullptr)
    {
        return;
    }
    QString name=senderObj->objectName();//得到名字
    //刪除方法需要下面兩行代碼,因為需要刷新//QModelIndex idx =ui->mainTable->indexAt(QPoint(senderObj->frameGeometry().x(),senderObj->frameGeometry().y()));
    //int row=idx.row();

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM