CMouseManager Classe
Permite que um usuário associe comandos diferentes a um objeto CView específico quando o usuário clica duas vezes dentro dessa exibição.
Sintaxe
class CMouseManager : public CObject
Membros
Métodos Públicos
Designação | Descrição |
---|---|
CMouseManager::AddView | Adiciona um objeto CView à caixa de diálogo Personalização. A caixa de diálogo Personalização permite que o usuário associe um clique duplo a um comando para cada um dos modos de exibição listados. |
CMouseManager::GetViewDblClickCommand | Retorna o comando que é executado quando o usuário clica duas vezes dentro da exibição fornecida. |
CMouseManager::GetViewIconId | Retorna o ícone associado ao ID de exibição fornecido. |
CMouseManager::GetViewIdByName | Retorna o ID de exibição associado ao nome do modo de exibição fornecido. |
CMouseManager::GetViewNames | Recupera uma lista de todos os nomes de exibição adicionados. |
CMouseManager::LoadState | Carrega o estado CMouseManager do registro do Windows. |
CMouseManager::SaveState | Grava o estado CMouseManager no registro do Windows. |
CMouseManager::SetCommandForDblClk | Associa o comando fornecido e a visualização fornecida. |
Comentários
A classe CMouseManager
mantém uma coleção de objetos CView
. Cada vista é identificada por um nome e por um ID. Esses modos de exibição são mostrados na caixa de diálogo Personalização. O usuário pode alterar o comando associado a qualquer modo de exibição por meio da caixa de diálogo Personalização . O comando associado é executado quando o usuário clica duas vezes nessa exibição. Para dar suporte a isso de uma perspetiva de codificação, você deve processar a mensagem WM_LBUTTONDBLCLK e chamar a função CWinAppEx::OnViewDoubleClick no código desse objeto CView
.
Você não deve criar um objeto CMouseManager
manualmente. Ele será criado pela estrutura do seu aplicativo. Ele também será destruído automaticamente quando o usuário sair do aplicativo. Para obter um ponteiro para o gerenciador de mouse para seu aplicativo, chame CWinAppEx::GetMouseManager.
Hierarquia de herança
CMouseManager
Requerimentos
Cabeçalho: afxmousemanager.h
CMouseManager::AddView
Registra um objeto CView com o CMouseManager Class para oferecer suporte ao comportamento personalizado do mouse.
BOOL AddView(
int iViewId,
UINT uiViewNameResId,
UINT uiIconId = 0);
BOOL AddView(
int iId,
LPCTSTR lpszViewName,
UINT uiIconId = 0);
Parâmetros
iViewId
[em] Um ID de visualização.
uiViewNameResId
[em] Um ID de cadeia de caracteres de recurso que faz referência ao nome do modo de exibição.
uiIconId
[em] Um ID de ícone de visualização.
iId
[em] Um ID de visualização.
lpszViewName
[em] Um nome de vista.
Valor de retorno
Diferente de zero se for bem-sucedido; caso contrário, 0.
Comentários
Para oferecer suporte ao comportamento personalizado do mouse, uma exibição deve ser registrada com o objeto CMouseManager
. Qualquer objeto derivado da classe CView
pode ser registrado com o gerenciador de mouse. A cadeia de caracteres e o ícone associados a um modo de exibição são exibidos na guia do mouse da caixa de diálogo Personalizar .
É da responsabilidade do programador criar e manter IDs de visualização, tais como iViewId e iId.
Para obter mais informações sobre como fornecer um comportamento personalizado do mouse, consulte Keyboard and Mouse Customization.
Exemplo
O exemplo a seguir demonstra como recuperar um ponteiro para um objeto CMouseManager
usando o método CWinAppEx::GetMouseManager
e o método AddView
na classe CMouseManager
. Este trecho de código faz parte do exemplo de State Collection.
GetMouseManager()->AddView(IDR_MAINFRAME, _T("My view"), IDR_MAINFRAME);
CMouseManager::GetViewDblClickCommand
Retorna o comando que é executado quando o usuário clica duas vezes dentro da exibição fornecida.
UINT GetViewDblClickCommand(int iId) const;
Parâmetros
iId
[em] O ID de visualização.
Valor de retorno
O identificador de comando se a exibição estiver associada a um comando; caso contrário, 0.
CMouseManager::GetViewIconId
Recupera o ícone associado a um ID de exibição.
UINT GetViewIconId(int iViewId) const;
Parâmetros
iViewId
[em] O ID de visualização.
Valor de retorno
Um identificador de recurso de ícone, se bem-sucedido; caso contrário, 0.
Comentários
Esse método falhará se a exibição não for registrada primeiro usando CMouseManager::AddView.
CMouseManager::GetViewIdByName
Recupera a ID de exibição associada a um nome de exibição.
int GetViewIdByName(LPCTSTR lpszName) const;
Parâmetros
lpszName
[em] O nome do modo de exibição.
Valor de retorno
Um ID de visualização, se bem-sucedido; caso contrário, 0.
Comentários
Esse método pesquisa visualizações registradas usando CMouseManager::AddView.
CMouseManager::GetViewNames
Recupera uma lista de todos os nomes de exibição registrados.
void GetViewNames(CStringList& listOfNames) const;
Parâmetros
listOfNames
[saídas] Uma referência a CStringList
objeto.
Comentários
Esse método preenche o parâmetro listOfNames
com os nomes de todas as exibições registradas usando CMouseManager::AddView.
CMouseManager::LoadState
Carrega o estado do de classe CMouseManager do registro.
BOOL LoadState(LPCTSTR lpszProfileName = NULL);
Parâmetros
lpszProfileName
[em] Um caminho de uma chave do Registro.
Valor de retorno
Diferente de zero se for bem-sucedido; caso contrário, 0.
Comentários
As informações de estado carregadas do Registro incluem as exibições registradas, identificadores de exibição e os comandos associados. Se o parâmetro lpszProfileName for NULL, essa função carregará os dados CMouseManager
do local do Registro padrão controlado pelo CWinAppEx Class.
Na maioria dos casos, você não precisa chamar essa função diretamente. Ele é chamado como parte do processo de inicialização do espaço de trabalho. Para obter mais informações sobre o processo de inicialização do espaço de trabalho, consulte CWinAppEx::LoadState.
CMouseManager::SaveState
Grava o estado do de classe CMouseManager no registro.
BOOL SaveState(LPCTSTR lpszProfileName = NULL);
Parâmetros
lpszProfileName
[em] Um caminho de uma chave do Registro.
Valor de retorno
Diferente de zero se for bem-sucedido; caso contrário, 0.
Comentários
As informações de estado gravadas no Registro incluem todas as exibições registradas, identificadores de exibição e os comandos associados. Se o parâmetro lpszProfileName for NULL, essa função gravará os dados CMouseManager
no local do Registro padrão controlado pelo CWinAppEx Class.
Na maioria dos casos, você não precisa chamar essa função diretamente. Ele é chamado como parte do processo de serialização do espaço de trabalho. Para obter mais informações sobre o processo de serialização do espaço de trabalho, consulte CWinAppEx::SaveState.
CMouseManager::SetCommandForDblClk
Associa um comando personalizado a um modo de exibição que é registrado pela primeira vez com o gerenciador de mouse.
void SetCommandForDblClk(
int iViewId,
UINT uiCmd);
Parâmetros
iViewId
[em] O identificador de exibição.
uiCmd
[em] O identificador de comando.
Comentários
Para associar um comando personalizado a um modo de exibição, você deve primeiro registrar o modo de exibição usando CMouseManager::AddView. O método AddView
requer um identificador de exibição como um parâmetro de entrada. Depois de registrar uma exibição, você pode chamáCMouseManager::SetCommandForDblClk
com o mesmo parâmetro de entrada do identificador de exibição que forneceu ao AddView
. Depois disso, quando o usuário clica duas vezes no mouse na visualização registrada, o aplicativo executará o comando indicado por uiCmd. Para suportar o comportamento personalizado do rato, também terá de personalizar a vista registada com o gestor de ratos. Para obter mais informações sobre o comportamento personalizado do mouse, consulte Keyboard and Mouse Customization.
Se uiCmd estiver definido como 0, a exibição especificada não será mais associada a um comando.
Ver também
Gráfico de Hierarquia
Aulas
CWinAppEx Classe
de personalização de teclado e mouse