2016-09-22 23 views

回答

1

有沒有什麼辦法可以在QMessageBox中設置TabOrder而無需繼承它 或自己寫?如果你已經有了大項目 - 這個 可能會有用。

有一種方法可以在QMessageBox中使用setTabOrder。所有你需要的是QWidget*指向'from'和'to'選項卡的指針。

class MyApp 
{ 
    // ... 
    void tabOrdering(); 
    QMessagebox* m_pMsgBox; 
} 

void MyApp::tabOrdering() 
{ 
    auto* pSaveBn = m_pMsgBox->addButton(QMessagebox::Save); 
    m_pMsgBox->setTabOrder(m_pMsgBox->defaultButton(), pSaveBn); 
} 

您也可以考慮使用QObject::findChild方法來查找選項卡控件停止。