Compartilhar via


Classe CUserTool

Uma ferramenta de usuário é um item de menu que executa um aplicativo externo. A guia Ferramentas da caixa de diálogo Personalizar (Classe CMFCToolBarsCustomizeDialog) permite que o usuário adicione ferramentas de usuário e especifique o nome, o comando, os argumentos e o diretório inicial para cada ferramenta de usuário.

Sintaxe

class CUserTool : public CObject

Membros

Métodos públicos

Nome Descrição
CUserTool::CopyIconToClipboard
CUserTool::DrawToolIcon Desenha o ícone de ferramenta do usuário em um retângulo especificado.
CUserTool::GetCommand Retorna uma cadeia de caracteres que contém o texto do comando associado à ferramenta de usuário.
CUserTool::GetCommandId Retorna a ID de comando do item de menu da ferramenta de usuário.
CUserTool::Invoke Executa o comando associado à ferramenta de usuário.
CUserTool::Serialize Lê ou grava esse objeto de ou em uma camada de arquivos. (Substitui CObject::Serialize.)
CUserTool::SetCommand Define o comando associado à ferramenta de usuário.
CUserTool::SetToolIcon Carrega o ícone da ferramenta de usuário a partir do aplicativo associado à ferramenta.

Métodos protegidos

Nome Descrição
CUserTool::LoadDefaultIcon Carrega o ícone padrão de uma ferramenta de usuário.

Membros de dados

Nome Descrição
CUserTool::m_strArguments Argumentos de linha de comando para a ferramenta de usuário.
CUserTool::m_strInitialDirectory O diretório inicial da ferramenta de usuário.
CUserTool::m_strLabel O nome da ferramenta exibido no item de menu da ferramenta.

Comentários

Para obter mais informações sobre como habilitar ferramentas de usuário no seu aplicativo, consulte a classe CUserToolsManager.

Exemplo

O exemplo a seguir demonstra como criar uma ferramenta a partir de um objeto CUserToolsManager, definir a variável m_strLabel de membro e definir o aplicativo que a ferramenta de usuário executa. Esse snippet de código faz parte do exemplo de Demonstração do Visual Studio.

// CUserToolsManager* pUserToolsManager
CUserTool* pTool1 = pUserToolsManager->CreateNewTool();
pTool1->m_strLabel = _T("&Notepad");
pTool1->SetCommand(_T("notepad.exe"));

Hierarquia de herança

CObject

CUserTool

Requisitos

Cabeçalho: afxusertool.h

CUserTool::CopyIconToClipboard

Para obter mais detalhes, confira o código-fonte localizado na pasta VC\atlmfc\src\mfc de sua instalação do Visual Studio.

BOOL CopyIconToClipboard();

Valor de retorno

Comentários

CUserTool::DrawToolIcon

Desenha o ícone de ferramenta do usuário no centro de um retângulo especificado.

void DrawToolIcon(
    CDC* pDC,
    const CRect& rectImage);

Parâmetros

pDC
[in] Um ponteiro para um contexto de dispositivo.

rectImage
[in] Especifica as coordenadas da área para exibir o ícone.

CUserTool::GetCommand

Retorna uma cadeia de caracteres que contém o texto do comando associado à ferramenta de usuário.

const CString& GetCommand() const;

Valor de retorno

Uma referência para um objeto CString que contém o texto do comando associado à ferramenta de usuário.

CUserTool::GetCommandId

Retorna a ID de comando da ferramenta de usuário.

UINT GetCommandId() const;

Valor de retorno

A ID de comando desta ferramenta de usuário.

CUserTool::Invoke

Executa o comando associado à ferramenta de usuário.

virtual BOOL Invoke();

Valor de retorno

Não zero se o comando tiver sido executado com êxito; caso contrário, 0.

Comentários

Chama ShellExecute para executar um comando associado à ferramenta de usuário. A função falhará se o comando estiver vazio ou se ShellExecute falhar.

CUserTool::LoadDefaultIcon

Carrega o ícone padrão de uma ferramenta de usuário.

virtual HICON LoadDefaultIcon();

Valor de retorno

Um identificador para o ícone carregado (HICON) ou NULL se o ícone padrão não puder ser carregado.

Comentários

A estrutura chama esse método quando não é possível carregar um ícone para uma ferramenta definida pelo usuário do arquivo executável da ferramenta.

Substitua esse método para fornecer seu próprio ícone de ferramenta padrão.

CUserTool::m_strArguments

Argumentos de linha de comando para a ferramenta de usuário.

CString m_strArguments;

Comentários

Essa cadeia de caracteres é passada para a ferramenta quando você chama CUserTool::Invoke ou quando um usuário clica no comando associado a essa ferramenta.

CUserTool::m_strInitialDirectory

Especifica o diretório inicial da ferramenta de usuário.

CString m_strInitialDirectory;

Comentários

Essa variável especifica o diretório inicial em que a ferramenta é executada quando você chama CUserTool::Invoke ou quando um usuário clica no comando associado a essa ferramenta.

CUserTool::m_strLabel

O rótulo que é exibido no item de menu da ferramenta.

CString m_strLabel;

CUserTool::Serialize

Para obter mais detalhes, confira o código-fonte localizado na pasta VC\atlmfc\src\mfc de sua instalação do Visual Studio.

virtual void Serialize(CArchive& ar);

Parâmetros

[in] ar

Comentários

CUserTool::SetCommand

Define o aplicativo que a ferramenta de usuário executa.

void SetCommand(LPCTSTR lpszCmd);

Parâmetros

lpszCmd
[in] Especifica o novo aplicativo a ser associado à ferramenta de usuário.

Comentários

Chame esse método para definir um novo aplicativo que a ferramenta de usuário executa. O método destrói o ícone antigo e carrega um novo ícone a partir do aplicativo especificado. Se ele não puder carregar um ícone do aplicativo, ele carregará o ícone padrão de uma ferramenta de usuário chamando CUserTool::LoadDefaultIcon.

CUserTool::SetToolIcon

Carrega o ícone da ferramenta de usuário a partir do aplicativo associado à ferramenta.

virtual HICON SetToolIcon();

Valor de retorno

Um identificador do ícone carregado.

Comentários

Chame esse método para carregar o ícone a ser exibido no item de menu. Esse método pesquisa o ícone no arquivo executável que a ferramenta usa. Se ele não tiver um ícone padrão, o ícone fornecido por CUserTool::LoadDefaultIcon será usado em vez disso.

Confira também

Gráfico da hierarquia
Classes
Classe CWinAppEx
Classe CUserToolsManager