Partilhar via


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

CObject

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