Compartir por


Clase CUserTool

Una herramienta de usuario es un elemento de menú que ejecuta una aplicación externa. La pestaña Herramientas del cuadro de diálogo Personalizar (clase CMFCToolBarsCustomizeDialog) permite al usuario agregar herramientas y especificar el nombre, el comando, los argumentos y el directorio inicial para cada herramienta de usuario.

Sintaxis

class CUserTool : public CObject

Miembros

Métodos públicos

Nombre Descripción
CUserTool::CopyIconToClipboard
CUserTool::DrawToolIcon Dibuja el icono de la herramienta de usuario en un rectángulo especificado.
CUserTool::GetCommand Devuelve una cadena que contiene el texto del comando asociado a la herramienta de usuario.
CUserTool::GetCommandId Devuelve el identificador de comando del elemento de menú de la herramienta de usuario.
CUserTool::Invoke Ejecuta el comando asociado a la herramienta de usuario.
CUserTool::Serialize Lee o escribe este objeto de o en un archivo. (Invalida CObject::Serialize).
CUserTool::SetCommand Establece el comando asociado a la herramienta de usuario.
CUserTool::SetToolIcon Carga el icono de la herramienta de usuario desde la aplicación asociada a la herramienta.

Métodos protegidos

Nombre Descripción
CUserTool::LoadDefaultIcon Carga el icono predeterminado para una herramienta de usuario.

Miembros de datos

Nombre Descripción
CUserTool::m_strArguments Argumentos de la línea de comandos para la herramienta de usuario.
CUserTool::m_strInitialDirectory Directorio inicial de la herramienta de usuario.
CUserTool::m_strLabel Nombre de herramienta que se muestra en el elemento de menú de la herramienta.

Comentarios

Para más información sobre cómo habilitar las herramientas de usuario en la aplicación, consulte Clase CUserToolsManager.

Ejemplo

En el ejemplo siguiente, se muestra cómo crear una herramienta a partir de un objeto CUserToolsManager, establecer la variable miembro m_strLabel y establecer la aplicación que la herramienta de usuario ejecuta. Este fragmento de código forma parte del ejemplo de demostración de Visual Studio.

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

Jerarquía de herencia

CObject

CUserTool

Requisitos

Encabezado: afxusertool.h

CUserTool::CopyIconToClipboard

Para obtener información más detallada, consulta el código fuente que se ubica en la carpeta VC\atlmfc\src\mfc de la instalación de Visual Studio.

BOOL CopyIconToClipboard();

Valor devuelto

Comentarios

CUserTool::DrawToolIcon

Dibuja el icono de la herramienta de usuario en el centro de un rectángulo especificado.

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

Parámetros

pDC
[in] Puntero a un contexto de dispositivo.

rectImage
[in] Especifica las coordenadas del área para mostrar el icono.

CUserTool::GetCommand

Devuelve una cadena que contiene el texto del comando asociado a la herramienta de usuario.

const CString& GetCommand() const;

Valor devuelto

Referencia al objeto CString que contiene el texto del comando asociado a la herramienta de usuario.

CUserTool::GetCommandId

Devuelve el identificador de comando de la herramienta de usuario.

UINT GetCommandId() const;

Valor devuelto

Identificador de comando de esta herramienta de usuario.

CUserTool::Invoke

Ejecuta el comando asociado a la herramienta de usuario.

virtual BOOL Invoke();

Valor devuelto

Distinto de cero si el comando se ejecutó correctamente; de lo contrario, 0.

Comentarios

Llama a ShellExecute para ejecutar un comando asociado a la herramienta de usuario. Se produce un error en la función si el comando está vacío o si se produce un error en ShellExecute.

CUserTool::LoadDefaultIcon

Carga el icono predeterminado para una herramienta de usuario.

virtual HICON LoadDefaultIcon();

Valor devuelto

Identificador del icono cargado (HICON) o NULL si no se puede cargar el icono predeterminado.

Comentarios

El marco llama a este método cuando no puede cargar un icono para una herramienta definida por el usuario desde el archivo ejecutable de la herramienta.

Invalide este método para suministrar su propio icono de herramienta predeterminado.

CUserTool::m_strArguments

Argumentos de la línea de comandos para la herramienta de usuario.

CString m_strArguments;

Comentarios

Esta cadena se pasa a la herramienta cuando se llama a CUserTool::Invoke o cuando un usuario hace clic en el comando asociado a esta herramienta.

CUserTool::m_strInitialDirectory

Especifica el directorio inicial de la herramienta de usuario.

CString m_strInitialDirectory;

Comentarios

Esta variable especifica el directorio inicial en el que se ejecuta la herramienta cuando se llama a CUserTool::Invoke o cuando un usuario hace clic en el comando asociado a esta herramienta.

CUserTool::m_strLabel

La herramienta que se muestra en el elemento de menú de la herramienta.

CString m_strLabel;

CUserTool::Serialize

Para obtener información más detallada, consulta el código fuente que se ubica en la carpeta VC\atlmfc\src\mfc de la instalación de Visual Studio.

virtual void Serialize(CArchive& ar);

Parámetros

[in] ar

Comentarios

CUserTool::SetCommand

Establece la aplicación que la herramienta de usuario ejecuta.

void SetCommand(LPCTSTR lpszCmd);

Parámetros

lpszCmd
[in] Especifica la aplicación nueva que se va a asociar a la herramienta de usuario.

Comentarios

Llame a este método para establecer una aplicación nueva que ejecuta la herramienta de usuario. El método destruye el icono anterior y carga un icono nuevo de la aplicación especificada. Si no puede cargar un icono desde la aplicación, carga el icono predeterminado para una herramienta de usuario mediante una llamada a CUserTool::LoadDefaultIcon.

CUserTool::SetToolIcon

Carga el icono de la herramienta de usuario desde la aplicación que la herramienta usa.

virtual HICON SetToolIcon();

Valor devuelto

Identificador del icono cargado.

Comentarios

Llame a este método para cargar el icono que se va a mostrar en el elemento de menú. Este método busca el icono en el archivo ejecutable que la herramienta usa. Si no tiene ningún icono predeterminado, en su lugar se usa el icono que CUserTool::LoadDefaultIcon proporciona.

Consulte también

Gráfico de jerarquías
Clases
CWinAppEx (clase)
CUserToolsManager (clase)