Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.
É usado apenas dentro de um ON_UPDATE_COMMAND_UI manipulador numa CCmdTargetclasse derivada de .
Sintaxe
class CCmdUI
Membros
Métodos Públicos
| Nome | Description |
|---|---|
| CCmdUI::ContinueRouting | Diz ao mecanismo de encaminhamento de comandos para continuar a encaminhar a mensagem atual pela cadeia de handlers. |
| CCmdUI::Ativar | Ativa ou desativa o item de interface de utilizador para este comando. |
| CCmdUI::SetCheck | Define o estado de verificação do item da interface de utilizador para este comando. |
| CCmdUI::SetRadio | Como a SetCheck função de membros, mas opera em grupos de rádio. |
| CCmdUI::SetText | Define o texto para o item da interface de utilizador deste comando. |
Membros de Dados Públicos
| Nome | Description |
|---|---|
| CCmdUI::m_nID | O ID do objeto de interface de utilizador. |
| CCmdUI::m_nIndex | O índice do objeto da interface de utilizador. |
| CCmdUI::m_pMenu | Aponta para o menu representado pelo CCmdUI objeto. |
| CCmdUI::m_pOther | Aponta para o objeto janela que enviou a notificação. |
| CCmdUI::m_pSubMenu | Aponta para o submenu contido representado pelo CCmdUI objeto. |
Observações
CCmdUI não tem uma classe base.
Quando um utilizador da sua aplicação desce um menu, cada item do menu precisa de saber se deve ser mostrado como ativado ou desativado. O destino de um comando de menu fornece esta informação ao implementar um manipulador de ON_UPDATE_COMMAND_UI. Para cada um dos objetos da interface de utilizador de comandos na sua aplicação, utilize o Assistente de Classes ou a janela de Propriedades (na Vista de Classes) para criar uma entrada de mapa de mensagens e um protótipo de função para cada handler.
Quando o menu é puxado para baixo, o framework procura e chama cada ON_UPDATE_COMMAND_UI handler, cada handler chama CCmdUI funções membros como Enable e Check, e o framework então exibe adequadamente cada item do menu.
Um item do menu pode ser substituído por um botão na barra de controlo ou outro objeto de interface de utilizador de comandos sem alterar o código dentro do ON_UPDATE_COMMAND_UI handler.
A tabela seguinte resume o efeito CCmdUIque as funções dos membros têm em vários itens da interface de utilizador dos comandos.
| User-Interface Item | Enable | SetCheck | SetRadio | DefinirTexto |
|---|---|---|---|---|
| Item de menu | Ativar ou desativar | Verificações ou desmarcas | Verificações usando um ponto | Texto dos itens dos conjuntos |
| Botão da barra de ferramentas | Ativar ou desativar | Seleciona, desseleciona ou indeterminada | O mesmo que SetCheck |
(Não aplicável) |
| Painel da barra de estado | Torna o texto visível ou invisível | Conjuntos pop-out ou margem normal | O mesmo que SetCheck |
Texto do painel de conjuntos |
Botão normal para dentro CDialogBar |
Ativar ou desativar | Caixa de assinalar ou desmarcar | O mesmo que SetCheck |
Define o texto dos botões |
Controlo normal em CDialogBar |
Ativar ou desativar | (Não aplicável) | (Não aplicável) | Conjuntos do texto da janela |
Para mais informações sobre o uso desta classe, veja Como Atualizar User-Interface Objetos.
Hierarquia de herança
CCmdUI
Requerimentos
Cabeçalho: afxwin.h
CCmdUI::ContinueRouting
Chame esta função membro para dizer ao mecanismo de encaminhamento de comandos para continuar a encaminhar a mensagem atual pela cadeia de handlers.
void ContinueRouting();
Observações
Esta é uma função membro avançada que deve ser usada em conjunto com um handler de ON_COMMAND_EX que devolve FALSE. Para mais informações, consulte a Nota Técnica 6.
CCmdUI::Ativar
Chame esta função membro para ativar ou desativar o item de interface de utilizador deste comando.
virtual void Enable(BOOL bOn = TRUE);
Parâmetros
bOn
TRUE para ativar o item, FALSE para o desativar.
Example
ON_UPDATE_COMMAND_UI(ID_FILE_SAVE, &CMyDoc::OnUpdateFileSave)
void CMyDoc::OnUpdateFileSave(CCmdUI *pCmdUI)
{
// Enable the menu item if the file has been modified.
pCmdUI->Enable(m_bModified);
}
CCmdUI::m_nID
O ID do item do menu, botão da barra de ferramentas ou outro objeto da interface de utilizador representado pelo CCmdUI objeto.
UINT m_nID;
CCmdUI::m_nIndex
O índice do item do menu, botão da barra de ferramentas ou outro objeto da interface de utilizador representado pelo CCmdUI objeto.
UINT m_nIndex;
CCmdUI::m_pMenu
Apontador (do CMenu tipo) para o menu representado pelo CCmdUI objeto.
CMenu* m_pMenu;
Observações
NULL se o item não for um menu.
CCmdUI::m_pSubMenu
Apontador (do CMenu tipo) para o submenu contido representado pelo CCmdUI objeto.
CMenu* m_pSubMenu;
Observações
NULL se o item não for um menu. Se o submenu for um pop-up, m_nID contém o ID do primeiro item no menu pop-up. Para mais informações, consulte a Nota Técnica 21.
CCmdUI::m_pOther
Apontador (do tipo CWnd) para o objeto janela, como uma ferramenta ou barra de estado, que enviou a notificação.
CWnd* m_pOther;
Observações
NULL se o item for um menu ou um não-objeto CWnd .
CCmdUI::SetCheck
Chame esta função membro para definir o item da interface de utilizador deste comando para o estado de verificação apropriado.
virtual void SetCheck(int nCheck = 1);
Parâmetros
nCheck
Especifica o estado de verificação a definir. Se 0, desmarca; se 1, confere; e se 2, define indeterminado.
Observações
Esta função de membro funciona para itens do menu e botões da barra de ferramentas. O estado indeterminado aplica-se apenas aos botões da barra de ferramentas.
CCmdUI::SetRadio
Chame esta função membro para definir o item da interface de utilizador deste comando para o estado de verificação apropriado.
virtual void SetRadio(BOOL bOn = TRUE);
Parâmetros
bOn
TRUE para ativar o item; caso contrário, FALSO.
Observações
Esta função membro funciona como SetCheck, exceto que opera sobre itens da interface do utilizador que atuam como parte de um grupo de rádio. Desmarcar os outros itens do grupo não é automático, a menos que os próprios itens mantenham o comportamento do grupo de rádio.
CCmdUI::SetText
Chame esta função membro para definir o texto do item da interface de utilizador para este comando.
virtual void SetText(LPCTSTR lpszText);
Parâmetros
lpszText
Um apontador para uma cadeia de texto.
Example
void CMyRichEditView::OnUpdateLineNumber(CCmdUI *pCmdUI)
{
int nLine = GetRichEditCtrl().LineFromChar(-1) + 1;
CString string;
string.Format(_T("Line %d"), nLine);
pCmdUI->Enable(TRUE);
pCmdUI->SetText(string);
}