1
我正試圖在我的應用程序的功能區欄上創建一個搜索框。 它應該在樹形控件中搜索給定的文本,按下Enter按鈕,但不會丟失它的焦點/選擇。 當前我點擊時輸入它失去焦點,並讓用戶再次點擊該搜索框以繼續。明確地將焦點設置爲CMFCRibbonEdit
我的搜索框是一個CMFCRibbonEdit控件。
任何人都可以幫忙嗎?
在此先感謝。
我正試圖在我的應用程序的功能區欄上創建一個搜索框。 它應該在樹形控件中搜索給定的文本,按下Enter按鈕,但不會丟失它的焦點/選擇。 當前我點擊時輸入它失去焦點,並讓用戶再次點擊該搜索框以繼續。明確地將焦點設置爲CMFCRibbonEdit
我的搜索框是一個CMFCRibbonEdit控件。
任何人都可以幫忙嗎?
在此先感謝。
有同樣的問題,解決方案有點痛苦。如果你看看CMFCRibbonEdit的來源,你會看到它有一個受保護的成員CMFCRibbonRichEditCtrl * m_pWndEdit;內部功能區代碼使用m_pWndEdit-> SetFocus();將焦點置於編輯控件上。你可以從CMFCRibbonEdit派生一個類,使用類似
class CMyRibbonEdit : public CMFCRibbonEdit
{
public:
void SetFocus()
{
m_pWndEdit->SetFocus();
}
};
但它有問題。值得注意的是,設置焦點會調用編輯窗口的命令處理程序,因此如果從該函數調用SetFocus,則很容易發生遞歸和堆棧錯誤。
看到你試過的代碼會有幫助。 – rrirower
我沒有編碼設置焦點。 – Yogesh