簡體   English   中英

如何以編程方式激活Windows Mobile中的菜單

[英]How to programmatically activate the menu in Windows mobile

在大多數版本的Windows中,您可以通過按F10鍵進入菜單,從而避免了使用鼠標的麻煩。 Windows Mobile 5.0中似乎沒有此行為,但是這種行為是可取的,因為我使用的設備將比觸摸屏驅動的鍵盤更多。

是否可以在C ++下使用MFC或Windows API調用以編程方式激活和使用Windows Mobile 5.0上的菜單。 我嘗試將CFrameWnd和CCeCommandBar類的焦點設置為無效。

經過多次嘗試,以下內容似乎起作用:

void CMyFrame::OnFocusMenu()
{
  PostMessage(WM_SYSCOMMAND,SC_KEYMENU,0);
}

FWIW,以下都不做,其中m_wndCommandBar是包含菜單的CCeCommandBar工具欄;

::SetActiveWindow(m_wndCommandBar.m_hWnd);
m_wndCommandBar.PostMessage(WM_ACTIVATE,WA_ACTIVE,0);
m_wndCommandBar.PostMessage(WM_LBUTTONDOWN,0,0);
m_wndCommandBar.PostMessage(WM_LBUTTONUP,0,0);
m_wndCommandBar.OnActivate(WA_ACTIVE, NULL, FALSE);
m_wndCommandBar.SetFocus();

如果按菜單表示軟鍵,請注意,它們分別綁定到F1和F2。

暫無
暫無

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

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