Como faço para usar as teclas de função com uma aplicação baseada CDialog em Windows Mobile 6 via MFC?
-
01-07-2019 - |
Pergunta
Como faço para usar as teclas de função com uma aplicação baseada CDialog em Windows Mobile 6 via MFC?
Eu tenho uma base CDialog Windows Mobile 6 (touchscreen) aplicativo profissional que eu sou workign diante.
O comportamento padrão de um aplicativo baseado CDialog em WM6 Professional é não usar qualquer teclas por padrão ... Eu quero mapear as teclas de função para "Cancelar" e funcionalidade "OK" que envia IDOK e IDCANCEL a minha classe de diálogo principal .
Eu tenho tentado trabalhar com CCommandBar sem sorte, e SHCreateMenuBar não estava funcionando para mim também.
Alguém tem um exemplo de como chegar a este trabalho?
Solução
O que "não está funcionando" com o CCommandBar para você? Você deve ser capaz de adicionar um membro CCommandBar a sua classe de diálogo, em seguida, em InitDialog teh de diálogo você chama Criar e InsertMenuBar na barra de comandos - algo como isto:
m_cmdBar.Create(this);
m_cmdBar.InsertMenuBar(IDR_MENU_RESRC_ID);
O recurso de menu pode ser algo como isto:
IDR_MENU_RESRC_ID MENU DISCARDABLE
BEGIN
MENUITEM "OK", IDOK
MENUITEM "Cancel", IDCANCEL
END
Outras dicas
muito obrigado ... Eu estava ficando louco com isso ...
seu código funcionou exatamente como o esperado ...
Na primeira eu usei e teve os mesmos resultados, a área tecla seria em branco, exceto para o botão de entrada SIP.
Depois de uma hora ou assim de depuração Eu tentei colocar essas 2 linhas de código no final da minha OnInitDialog () e funcionou:)
Meu problema ende dup sendo que na minha OnIitDialog () Eu estou criando algumas crianças diálogos. quando eu colocar o CCommandBar.InsertMenuBar () antes de criar diálogos criança eu não receber a minha "ok" ou "Cancelar" teclas de função, quando eu colocar essa linha após a criação de diálogos criança as teclas de função mostram como o esperado e um grande trabalho.
Obrigado novamente