簡體   English   中英

自動在對話框之間移動焦點

[英]Automatically Move Focus Between Dialogs

我有一個模式對話框,它在按下按鈕時顯示一個無模式的“伴隨對話框”。 為了使 UI 更加直觀和流暢,我希望焦點跟隨鼠標並在對話框之間移動,而無需額外的點擊。

是否有一個簡單的消息處理程序可以在這里提供幫助? 我想我可以通過在每個對話框中使用TrackMouseEventOnMouseHover來做到這一點 - 但對於這樣一個“簡單”的效果來說,這似乎很OnMouseHover

好吧……所以我完全想不通了! 只需使用OnMouseMoveOnNcMouseMove

//------------------------------------------------------------------------------
void DlgA::OnMouseMove(UINT nFlags, CPoint point)
//------------------------------------------------------------------------------
{
    HWND hwnd = ::GetActiveWindow();
    if (pDlgB != NULL)
    {
        if (hwnd == pDlgB->GetSafeHwnd())
        {
            // Make the focus switch automatically
            SetFocus();
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM