QT CloseEvent事件重寫

需求點:需要在我點擊窗體關閉按鈕(界面右上角叉叉),做一些特定的操作,比如傳遞數據到調用目前窗體的主窗體或者控件上。

只需要兩個步驟就可以搞定:

第一步,在當前窗體的頭文件(.h)中添加  

private:
    void closeEvent(QCloseEvent *event);  注意:event不能寫成主窗體的槽函數event()

第二步,在當前窗體對應的類文件(.cpp)文件中添加

void 當前窗體類名::closeEvent(QCloseEvent *event)
{
    int result = QMessageBox::information(this,tr("tips"),tr("Please confirm the current selection!"),tr("Yes"), tr("No"),0,1);
    if(result==0)
    {
        //點擊yes後需要執行的邏輯代碼
    }

    else
    {
        //點擊No後需要執行的邏輯代碼
    }
}

這樣完成以後,當你點擊窗體關閉按鈕,即可實現相應的功能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章