Clase CWinAppEx
CWinAppEx
controla el estado de aplicación, guarda el estado en el Registro, carga el estado desde el Registro, inicializa los administradores de la aplicación y proporciona vínculos a esos mismos administradores de la aplicación.
Para obtener información más detallada, consulte el código fuente ubicado en la carpeta mfc
de la instalación de Visual Studio. Por ejemplo, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
.
Sintaxis
class CWinAppEx : public CWinApp
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CWinAppEx::CWinAppEx |
Construye un objeto CWinAppEx . |
Métodos públicos
Nombre | Descripción |
---|---|
CWinAppEx::CleanState |
Quita información sobre la aplicación del Registro de Windows. |
CWinAppEx::EnableLoadWindowPlacement |
Especifica si la aplicación cargará la ubicación y el tamaño inicial de la ventana de marco principal desde el Registro. |
CWinAppEx::EnableTearOffMenus |
Habilita menús divisibles para la aplicación. |
CWinAppEx::EnableUserTools |
Permite al usuario crear comandos de menú personalizados en la aplicación. |
CWinAppEx::ExitInstance |
Lo llama el marco de trabajo desde dentro de la función miembro Run para salir de esta instancia de la aplicación. (Invalida CWinApp::ExitInstance ). |
CWinAppEx::GetBinary |
Lee los datos binarios asociados al valor del Registro especificado. |
CWinAppEx::GetContextMenuManager |
Devuelve un puntero al objeto global CContextMenuManager . |
CWinAppEx::GetDataVersion |
|
CWinAppEx::GetDataVersionMajor |
Devuelve la versión principal de la aplicación guardada en el Registro de Windows. |
CWinAppEx::GetDataVersionMinor |
Devuelve la versión secundaria de la aplicación guardada en el Registro de Windows. |
CWinAppEx::GetInt |
Lee los datos numéricos asociados al valor especificado desde el Registro. |
CWinAppEx::GetKeyboardManager |
Devuelve un puntero al objeto global CKeyboardManager . |
CWinAppEx::GetMouseManager |
Devuelve un puntero al objeto global CMouseManager . |
CWinAppEx::GetObject |
Lee los datos derivados de CObject asociados al valor especificado desde el Registro. |
CWinAppEx::GetRegSectionPath |
Devuelve una cadena que es la ruta de acceso de una clave del Registro. Esta ruta de acceso concatena la ruta de acceso relativa proporcionada con la ruta de acceso de la aplicación. |
CWinAppEx::GetRegistryBase |
Devuelve la ruta de acceso del Registro de la aplicación. |
CWinAppEx::GetSectionBinary |
Lee los datos binarios asociados a la clave y el valor especificados desde el Registro. |
CWinAppEx::GetSectionInt |
Lee los datos numéricos asociados a la clave y el valor especificados desde el Registro. |
CWinAppEx::GetSectionObject |
Lee los datos de CObject asociados a la clave y el valor especificados desde el Registro. |
CWinAppEx::GetSectionString |
Lee los datos de cadena asociados a la clave y el valor especificados desde el Registro. |
CWinAppEx::GetShellManager |
Devuelve un puntero al objeto global CShellManager . |
CWinAppEx::GetString |
Lee los datos de cadena asociados al valor especificado desde el Registro. |
CWinAppEx::GetTooltipManager |
Devuelve un puntero al objeto global CTooltipManager . |
CWinAppEx::GetUserToolsManager |
Devuelve un puntero al objeto global CUserToolsManager . |
CWinAppEx::InitContextMenuManager |
Inicializa el objeto CContextMenuManager . |
CWinAppEx::InitKeyboardManager |
Inicializa el objeto CKeyboardManager . |
CWinAppEx::InitMouseManager |
Inicializa el objeto CMouseManager . |
CWinAppEx::InitShellManager |
Inicializa la clase CShellManager . |
CWinAppEx::InitTooltipManager |
Inicializa la clase CTooltipManager . |
CWinAppEx::IsResourceSmartUpdate |
|
CWinAppEx::IsStateExists |
Indica si la clave especificada está en el Registro. |
CWinAppEx::LoadState |
Carga el estado de la aplicación desde el Registro. |
CWinAppEx::OnAppContextHelp |
Lo llama el marco de trabajo cuando el usuario solicita ayuda de contexto para el cuadro de diálogo Personalización. |
CWinAppEx::OnViewDoubleClick |
Llama al comando definido por el usuario cuando el usuario hace doble clic en cualquier parte de la aplicación. |
CWinAppEx::OnWorkspaceIdle |
|
CWinAppEx::SaveState |
Escribe el estado del marco de trabajo de la aplicación en el Registro de Windows. |
CWinAppEx::SetRegistryBase |
Establece la ruta de acceso de la clave del Registro predeterminada. Esta clave servirá como raíz para todas las llamadas al Registro posteriores. |
CWinAppEx::ShowPopupMenu |
Muestra un menú emergente. |
CWinAppEx::WriteBinary |
Escribe los datos binarios en el valor del Registro especificado. |
CWinAppEx::WriteInt |
Escribe los datos numéricos en el valor del Registro especificado. |
CWinAppEx::WriteObject |
Escribe datos derivados de la clase CObject en el valor del Registro especificado. |
CWinAppEx::WriteSectionBinary |
Escribe los datos binarios en un valor de la clave del Registro especificada. |
CWinAppEx::WriteSectionInt |
Escribe los datos numéricos en un valor de la clave del Registro especificada. |
CWinAppEx::WriteSectionObject |
Escribe los datos derivados de la clase CObject en un valor de la clave del Registro especificada. |
CWinAppEx::WriteSectionString |
Escribe los datos de cadena en un valor de la clave del Registro especificada. |
CWinAppEx::WriteString |
Escribe los datos de cadena en el valor del Registro especificado. |
Métodos protegidos
Nombre | Descripción |
---|---|
CWinAppEx::LoadCustomState |
Lo llama el marco de trabajo cuando se ha cargado el estado de la aplicación. |
CWinAppEx::LoadWindowPlacement |
Lo llama el marco de trabajo cuando carga el tamaño y la ubicación de la aplicación desde el Registro. Los datos cargados incluyen el tamaño y la ubicación del marco principal en el momento en que la aplicación se cerró por última vez. |
CWinAppEx::OnClosingMainFrame |
Lo llama el marco de trabajo cuando una ventana de marco principal está procesando WM_CLOSE . |
CWinAppEx::PreLoadState |
Lo llama el marco de trabajo inmediatamente antes de que se cargue el estado de la aplicación. |
CWinAppEx::PreSaveState |
Lo llama el marco de trabajo inmediatamente antes de que se guarde el estado de la aplicación. |
CWinAppEx::ReloadWindowPlacement |
Vuelve a cargar el tamaño y la ubicación de la ventana proporcionada desde el Registro. |
CWinAppEx::SaveCustomState |
Lo llama el marco de trabajo después de escribir el estado de la aplicación en el Registro. |
CWinAppEx::StoreWindowPlacement |
Lo llama el marco de trabajo para escribir el tamaño y la ubicación del marco principal en el Registro. |
Miembros de datos
Nombre | Descripción |
---|---|
CWinAppEx::m_bForceImageReset |
Especifica si el marco de trabajo restablecerá todas las imágenes de la barra de herramientas cuando se cargue la ventana de marco que contiene la barra de herramientas. |
Comentarios
Gran parte de la funcionalidad proporcionada por el marco de trabajo de MFC depende de la clase CWinAppEx
. Puede incorporar la clase CWinAppEx
a la aplicación de una de estas dos maneras:
Construya una clase
CWinAppEx
en el subproceso principal.Derive la clase de la aplicación principal de
CWinAppEx
.
Después de incorporar CWinAppEx
en la aplicación, puede inicializar cualquiera de los administradores de aplicaciones. Antes de usar un administrador de aplicaciones, debe inicializarlo llamando al método de inicialización adecuado. Para obtener un puntero a un administrador específico, llame al método get asociado. La clase CWinAppEx
administra los siguientes administradores de aplicaciones: clase CMouseManager
, clase CContextMenuManager
, clase CKeyboardManager
, clase CUserToolsManager
y clase CMenuTearOffManager
.
Jerarquía de herencia
Requisitos
Encabezado: afxwinappex.h
CWinAppEx::CleanState
Quita toda la información sobre la aplicación del Registro de Windows.
virtual BOOL CleanState(LPCTSTR lpszSectionName=NULL);
Parámetros
lpszSectionName
[in] Cadena que contiene una ruta de acceso de una clave del Registro.
Valor devuelto
Distinto de cero si el método se realizó correctamente. En caso contrario, 0.
Comentarios
Este método borra los datos de la aplicación de una sección específica del Registro. Puede especificar la sección que se va a borrar mediante el parámetro lpszSectionName
. Si lpszSectionName
es NULL
, este método usará la ruta de acceso predeterminada del Registro almacenada en el objeto CWinAppEx
. Para obtener la ruta de acceso predeterminada del Registro, use CWinAppEx::GetRegistryBase.
CWinAppEx::CWinAppEx
Construye un objeto CWinAppEx
.
CWinAppEx(BOOL bResourceSmartUpdate = FALSE);
Parámetros
bResourceSmartUpdate
[in] Parámetro booleano que especifica si el objeto del área de trabajo debe detectar y controlar las actualizaciones de recursos.
Comentarios
La clase CWinAppEx
tiene métodos de inicialización, proporciona funcionalidad para guardar y cargar la información de la aplicación en el Registro y controla la configuración global de la aplicación. También permite usar administradores globales, como la clase CKeyboardManager
y la clase CUserToolsManager
. Cada aplicación solo puede tener una instancia de la clase CWinAppEx
.
CWinAppEx::EnableLoadWindowPlacement
Especifica si la aplicación cargará la ubicación y el tamaño inicial de la ventana de marco principal desde el Registro.
void EnableLoadWindowPlacement(BOOL bEnable = TRUE);
Parámetros
bEnable
[in] Especifica si la aplicación carga la ubicación y el tamaño inicial de la ventana de marco principal desde el Registro.
Comentarios
De manera predeterminada, el tamaño y la ubicación del marco principal se cargan desde el Registro junto con otras configuraciones de la aplicación. Esto ocurre durante CWinAppEx::LoadState
. Si no desea cargar la ubicación inicial de la ventana desde el Registro, llame a este método con el elemento bEnable
establecido en FALSE
.
CWinAppEx::EnableTearOffMenus
Crea e inicializa un objeto CMenuTearOffManager
.
BOOL EnableTearOffMenus(
LPCTSTR lpszRegEntry,
const UINT uiCmdFirst,
const UINT uiCmdLast);
Parámetros
lpszRegEntry
[in] Cadena que contiene la ruta de acceso de una clave del Registro. La aplicación usa esta clave del Registro para almacenar información para los menús divisibles.
uiCmdFirst
[in] Identificador del primer menú divisible.
uiCmdLast
[in] Identificador del último menú divisible.
Valor devuelto
TRUE
si CMenuTearOffManager
se crea e inicializa correctamente; FALSE
si se produce un error o si CMenuTearOffManager
ya existe.
Comentarios
Use esta función para habilitar los menús divisibles en la aplicación. Debe llamar a esta función desde InitInstance
.
CWinAppEx::EnableUserTools
Permite al usuario crear comandos de menú personalizados que reduzcan las pulsaciones de teclas en la aplicación. Este método crea un objeto CUserToolsManager
.
BOOL EnableUserTools(
const UINT uiCmdToolsDummy,
const UINT uiCmdFirst,
const UINT uiCmdLast,
CRuntimeClass* pToolRTC = RUNTIME_CLASS(CUserTool),
UINT uArgMenuID = 0,
UINT uInitDirMenuID = 0);
Parámetros
uiCmdToolsDummy
[in] Un entero sin signo que el marco utiliza como marcador de posición para el id. de comando del menú de herramientas de usuario.
uiCmdFirst
[in] Identificador de comando del primer comando de herramientas de usuario.
uiCmdLast
[in] El id. de comando del último comando de herramientas de usuario.
pToolRTC
[in] Clase utilizada por el objeto CUserToolsManager
para crear nuevas herramientas de usuario.
uArgMenuID
[in] Identificador del menú de argumentos.
uInitDirMenuID
[in] Identificador de menú del directorio de herramientas inicial.
Valor devuelto
TRUE
si el método crea e inicializa un objeto CUserToolsManager
; FALSE
si se produce un error en el método o si ya existe un objeto CUserToolsManager
.
Comentarios
Al habilitar las herramientas definidas por el usuario, el marco de trabajo admite automáticamente un menú dinámico que se puede extender durante la personalización. El marco asocia cada nuevo elemento a un comando externo. El marco de trabajo invoca estos comandos cuando el usuario selecciona el elemento adecuado en el menú Herramientas.
Cada vez que el usuario agrega un nuevo elemento, el marco crea un nuevo objeto. El tipo de clase del nuevo objeto se define mediante pToolRTC
. El tipo de clase pToolRTC
se debe derivar de la clase CUserTool
.
Para obtener más información sobre las herramientas de usuario y cómo incorporarlas a la aplicación, consulte Herramientas definidas por el usuario.
CWinAppEx::ExitInstance
virtual int ExitInstance();
Valor devuelto
Comentarios
CWinAppEx::GetBinary
Lee datos binarios de una clave del Registro especificada.
BOOL GetBinary(
LPCTSTR lpszEntry,
LPBYTE* ppData,
UINT* pBytes);
Parámetros
lpszEntry
[in] Cadena que contiene el nombre de una clave del Registro.
ppData
[out] Puntero al búfer que el método rellena con los datos binarios.
pBytes
[out] Puntero a un entero sin signo que el método usa para escribir el número de bytes leídos.
Valor devuelto
TRUE
si es correcto; de lo contrario, FALSE
.
Comentarios
Este método lee datos binarios escritos en el Registro. Para escribir datos en el Registro, use los métodos CWinAppEx::WriteBinary
y CWinAppEx::WriteSectionBinary
.
El parámetro lpszEntry
es el nombre de una entrada del Registro ubicada en la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::GetContextMenuManager
Devuelve un puntero al objeto global CContextMenuManager
.
CContextMenuManager* GetContextMenuManager();
Valor devuelto
Puntero al objeto global CContextMenuManager
.
Comentarios
Si el objeto CContextMenuManager
no está inicializado, esta función llama a CWinAppEx::InitContextMenuManager
antes de devolver un puntero.
CWinAppEx::GetDataVersion
int GetDataVersion() const;
Valor devuelto
Comentarios
CWinAppEx::GetDataVersionMajor
Devuelve la versión principal de la aplicación guardada en el Registro de Windows al llamar a CWinAppEx::SaveState
.
int GetDataVersionMajor() const;
Valor devuelto
Valor entero que contiene el número de versión principal.
CWinAppEx::GetDataVersionMinor
Devuelve la versión secundaria de la aplicación guardada en el Registro de Windows al llamar a CWinAppEx::SaveState
.
int GetDataVersionMinor() const;
Valor devuelto
Valor entero que contiene el número de versión secundaria.
CWinAppEx::GetInt
Lee datos enteros de una clave del Registro especificada.
int GetInt(
LPCTSTR lpszEntry,
int nDefault = 0);
Parámetros
lpszEntry
[in] Cadena que contiene el nombre de una entrada del Registro.
nDefault
[in] Valor predeterminado que devuelve el método si no existe la entrada del Registro especificada.
Valor devuelto
Los datos del Registro si el método se realizó correctamente; de lo contrario, nDefault
.
Comentarios
Este método lee datos enteros del Registro. Si no hay datos enteros asociados a la clave del Registro indicada por lpszEntry
, este método devuelve nDefault
. Para escribir datos en el Registro, use los métodos CWinAppEx::WriteSectionInt
y CWinAppEx::WriteInt
.
El parámetro lpszEntry
es el nombre de una entrada del Registro ubicada en la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::GetKeyboardManager
Devuelve un puntero al objeto global CKeyboardManager
.
CKeyboardManager* GetKeyboardManager();
Valor devuelto
Puntero al objeto global CKeyboardManager
.
Comentarios
Si el administrador de teclado no está inicializado, esta función llama a CWinAppEx::InitKeyboardManager
antes de devolver un puntero.
CWinAppEx::GetMouseManager
Devuelve un puntero al objeto global CMouseManager
.
CMouseManager* GetMouseManager();
Valor devuelto
Puntero al objeto global CMouseManager
.
Comentarios
Si el administrador del mouse no está inicializado, esta función llama a CWinAppEx::InitMouseManager
antes de devolver un puntero.
CWinAppEx::GetObject
Lee datos derivados de CObject
del Registro.
BOOL GetObject(
LPCTSTR lpszEntry,
CObject& obj);
Parámetros
lpszEntry
[in] Cadena que contiene la ruta de acceso relativa de una entrada del Registro.
obj
[out] Referencia a un objeto CObject
. El método usa esta referencia para almacenar los datos del Registro.
Valor devuelto
Distinto de cero si el método se realizó correctamente. En caso contrario, 0.
Comentarios
Este método lee datos derivados de CObject
del Registro. Para escribir los datos de CObject
en el Registro, use CWinAppEx::WriteObject
o CWinAppEx::WriteSectionObject
.
El parámetro lpszEntry
es el nombre de una entrada del Registro que está ubicada en la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::GetRegistryBase
Recupera la ruta de acceso predeterminada del Registro de la aplicación.
LPCTSTR GetRegistryBase();
Valor devuelto
Cadena que contiene la ruta de acceso de la ubicación predeterminada del Registro.
Comentarios
Todos los métodos de la clase CWinAppEx
que acceden al Registro se inician en una ubicación predeterminada. Use este método para recuperar una ruta de acceso de la ubicación predeterminada del Registro. Use CWinAppEx::SetRegistryBase
para cambiar la ubicación predeterminada del Registro.
CWinAppEx::GetRegSectionPath
Crea y devuelve la ruta de acceso absoluta de una clave del Registro.
CString GetRegSectionPath(LPCTSTR szSectionAdd = _T(""));
Parámetros
szSectionAdd
[in] Cadena que contiene la ruta de acceso relativa de una clave del Registro.
Valor devuelto
Elemento CString
que contiene la ruta de acceso absoluta de una clave del Registro.
Comentarios
Este método define la ruta de acceso absoluta de la clave del Registro anexando la ruta de acceso relativa de szSectionAdd
a la ubicación predeterminada del Registro de la aplicación. Para obtener la clave del Registro predeterminada, use el método CWinAppEx::GetRegistryBase
.
CWinAppEx::GetSectionBinary
Lee datos binarios del Registro.
BOOL GetSectionBinary(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
LPBYTE* ppData,
UINT* pBytes);
Parámetros
lpszSubSection
[in] Cadena que contiene la ruta de acceso relativa de una clave del Registro.
lpszEntry
[in] Cadena que contiene el valor que se va a leer.
ppData
[out] Puntero al búfer en el que el método almacena los datos.
pBytes
[out] Puntero a un entero sin signo. El método escribe el tamaño de ppData
en este parámetro.
Valor devuelto
TRUE
si es correcto; de lo contrario, FALSE
.
Comentarios
Este método lee los datos binarios escritos en el Registro mediante los métodos CWinAppEx::WriteBinary
y CWinAppEx::WriteSectionBinary
.
El parámetro lpszSubSection
no es una ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::GetSectionInt
Este método lee datos enteros del Registro.
int GetSectionInt(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
int nDefault = 0);
Parámetros
lpszSubSection
[in] Cadena que contiene la ruta de acceso relativa de una clave del Registro.
lpszEntry
[in] Cadena que contiene el valor que se va a leer.
nDefault
[in] Valor predeterminado que se va a devolver si no existe el valor especificado.
Valor devuelto
Datos enteros almacenados en el valor del Registro especificado; nDefault
si los datos no existen.
Comentarios
Use los métodos CWinAppEx::WriteInt
y CWinAppEx::WriteSectionInt
para escribir datos enteros en el Registro.
El parámetro lpszSubSection
no es una ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::GetSectionObject
Lee datos de tipo CObject
del Registro.
BOOL GetSectionObject(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
CObject& obj);
Parámetros
lpszSubSection
[in] Cadena que contiene la ruta de acceso relativa de una clave del Registro.
lpszEntry
[in] Cadena que contiene el valor que se va a leer.
obj
[out] Referencia a un objeto CObject
. El método usa este elemento CObject
para almacenar los datos del Registro.
Valor devuelto
Si es correcta, su valor es distinto de cero. En caso contrario, es cero.
Comentarios
Este método lee datos del Registro. Los datos leídos son datos de tipo CObject
o datos de una clase derivada de CObject
. Para escribir los datos de CObject
en el Registro, use CWinAppEx::WriteObject
o CWinAppEx::WriteSectionObject
.
El parámetro lpszSubSection
no es una ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::GetSectionString
Lee datos de cadena del Registro.
CString GetSectionString(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
LPCTSTR lpszDefault = _T(""));
Parámetros
lpszSubSection
[in] Cadena que contiene la ruta de acceso relativa de una clave del Registro.
lpszEntry
[in] Cadena que contiene el valor que se va a leer.
lpszDefault
[in] Valor predeterminado que se va a devolver si no existe el valor especificado.
Valor devuelto
Datos de cadena almacenados en el valor del Registro especificado si los datos existen; de lo contrario, lpszDefault
.
Comentarios
Este método lee datos de cadena escritos en el Registro. Use CWinAppEx::WriteString
y CWinAppEx::WriteSectionString
para escribir datos de cadena en el Registro.
El parámetro lpszSubSection
no es una ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::GetShellManager
Devuelve un puntero al objeto global CShellManager
.
CShellManager* GetShellManager();
Valor devuelto
Puntero al objeto global CShellManager
.
Comentarios
Si el objeto CShellManager
no está inicializado, esta función llama a CWinAppEx::InitShellManager
antes de devolver un puntero.
CWinAppEx::GetString
Lee datos de cadena de una clave del Registro especificada.
CString GetString(
LPCTSTR lpszEntry,
LPCTSTR lpzDefault= _T(""));
Parámetros
lpszEntry
[in] Cadena que contiene el nombre de una clave del Registro
lpzDefault
[in] Valor predeterminado que devuelve el método si no existe la entrada del Registro especificada.
Valor devuelto
Datos de cadena almacenados en el Registro si se realiza correctamente; de lo contrario, lpszDefault
.
Comentarios
Este método lee datos de cadena escritos en el Registro. Para escribir datos en el Registro, use los métodos CWinAppEx::WriteString
o CWinAppEx::WriteSectionString
.
El parámetro lpszEntry
es el nombre de una entrada del Registro ubicada en la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::GetTooltipManager
Devuelve un puntero al objeto global CTooltipManager
.
CTooltipManager* GetTooltipManager();
Valor devuelto
Puntero al objeto global CTooltipManager
.
Comentarios
Si el objeto CTooltipManager
no está inicializado, esta función llama a CWinAppEx::InitTooltipManager
antes de devolver un puntero.
CWinAppEx::GetUserToolsManager
Devuelve un puntero al objeto global CUserToolsManager
.
CUserToolsManager* GetUserToolsManager();
Valor devuelto
Puntero al objeto global CUserToolsManager
; NULL
si la administración de herramientas de usuario no está habilitada para la aplicación.
Comentarios
Antes de recuperar un puntero al objeto CUserToolsManager
, debe inicializar el administrador mediante una llamada a CWinAppEx::EnableUserTools
.
CWinAppEx::InitContextMenuManager
Inicializa el objeto CContextMenuManager
.
BOOL InitContextMenuManager();
Valor devuelto
Distinto de cero si el método crea el objeto CContextMenuManager
; 0 si ya existe el objeto CContextMenuManager
.
Comentarios
Si llama a CWinAppEx::GetContextMenuManager
, la implementación predeterminada de ese método llama a InitContextMenuManager
.
Si la aplicación ya tiene un administrador de menús contextuales y llama a InitContextMenuManager
, la aplicación obtendrá el error ASSERT
. Por lo tanto, no debe llamar a InitContextMenuManager
si crea un objeto CContextMenuManager
directamente. Si no usa un objeto CContextMenuManager
personalizado, debe usar GetContextMenuManager
para crear un objeto CContextMenuManager
.
CWinAppEx::InitKeyboardManager
Inicializa el objeto CKeyboardManager
.
BOOL InitKeyboardManager();
Valor devuelto
Distinto de cero si el método crea el objeto CKeyboardManager
; 0 si ya existe el objeto CKeyboardManager
.
Comentarios
Si llama a CWinAppEx::GetKeyboardManager
, la implementación predeterminada de ese método llama a InitKeyboardManager
.
Si la aplicación ya tiene un administrador de teclado y llama a InitKeyboardManager
, la aplicación obtendrá el error ASSERT
. Por lo tanto, no debe llamar a InitKeyboardManager
si crea un objeto CKeyboardManager
directamente. Si no usa un objeto CKeyboardManager
personalizado, debe usar GetKeyboardManager
para crear un objeto CKeyboardManager
.
CWinAppEx::InitMouseManager
Inicializa el objeto CMouseManager
.
BOOL InitMouseManager();
Valor devuelto
Distinto de cero si el método crea el objeto CMouseManager
; 0 si ya existe el objeto CMouseManager
.
Comentarios
Si llama a CWinAppEx::GetMouseManager
, la implementación predeterminada de ese método llama a InitMouseManager
.
Si la aplicación ya tiene un administrador del mouse y llama a InitMouseManager
, la aplicación obtendrá el error ASSERT
. Por lo tanto, no debe llamar a InitMouseManager
si crea un objeto CMouseManager
directamente. Si no usa un objeto CMouseManager
personalizado, debe usar GetMouseManager
para crear un objeto CMouseManager
.
CWinAppEx::InitShellManager
Inicializa el objeto CShellManager
.
BOOL InitShellManager();
Valor devuelto
Distinto de cero si el método crea el objeto CShellManager
; 0 si ya existe el objeto CShellManager
.
Comentarios
Si llama a CWinAppEx::GetShellManager
, la implementación predeterminada de ese método llama a InitShellManager
.
Si la aplicación ya tiene un administrador del shell y llama a InitShellManager
, la aplicación genera el error ASSERT
. Por lo tanto, no llame a InitShellManager
si crea un objeto CShellManager
directamente. Si no usa un objeto CShellManager
personalizado, utilice GetShellManager
para crear un objeto CShellManager
.
CWinAppEx::InitTooltipManager
Inicializa el objeto CTooltipManager
.
BOOL InitTooltipManager();
Valor devuelto
Distinto de cero si el método crea el objeto CTooltipManager
; 0 si ya existe el objeto CTooltipManager
.
Comentarios
Si llama a CWinAppEx::GetTooltipManager
, la implementación predeterminada de ese método llama a InitTooltipManager
.
Si la aplicación ya tiene un administrador de información sobre herramientas y llama a InitTooltipManager
, la aplicación obtendrá el error ASSERT
. Por lo tanto, no debe llamar a InitTooltipManager
si crea un objeto CTooltipManager
directamente. Si no usa un objeto CTooltipManager
personalizado, debe usar GetTooltipManager
para crear un objeto CTooltipManager
.
CWinAppEx::IsResourceSmartUpdate
BOOL IsResourceSmartUpdate() const;
Valor devuelto
Comentarios
CWinAppEx::IsStateExists
Indica si la clave especificada está en el Registro.
BOOL IsStateExists(LPCTSTR lpszSectionName);
Parámetros
lpszSectionName
[in] Cadena que contiene una ruta de acceso de una clave del Registro.
Valor devuelto
Distinto de cero si la clave está en el Registro; de lo contrario, 0.
CWinAppEx::LoadCustomState
El marco de trabajo llama a este método después de cargar el estado de la aplicación desde el Registro.
virtual void LoadCustomState();
Comentarios
Invalide este método si desea realizar algún procesamiento después de que la aplicación cargue el estado desde el Registro. De forma predeterminada, este método no hace nada.
Para cargar información de estado personalizada desde el Registro, primero se debe guardar la información mediante CWinAppEx::SaveCustomState
.
CWinAppEx::LoadState
Lee el estado de la aplicación del Registro de Windows.
BOOL LoadState(
CMDIFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
BOOL LoadState(
CFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
BOOL LoadState(
COleIPFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
virtual BOOL LoadState(
LPCTSTR lpszSectionName = NULL,
CFrameImpl* pFrameImpl = NULL);
Parámetros
pFrame
[in] Puntero a un objeto de ventana de marco. El método aplica la información de estado del Registro a esta ventana de marco.
lpszSectionName
[in] Cadena que contiene la ruta de acceso relativa de una clave del Registro.
pFrameImpl
[in] Un puntero a un objeto CFrameImpl
. El método aplica la información de estado del Registro a esta ventana de marco.
Valor devuelto
Su valor será distinto de cero en caso correcto, de lo contrario, será cero.
Comentarios
Este método carga el estado de la aplicación y cualquier información de estado de una ventana de marco. La información cargada de la ventana de marco se aplica a la ventana de marco proporcionada. Si no proporciona una ventana de marco, solo se carga la información de estado de la aplicación. La información de la aplicación incluye el estado de la clase CMouseManager
, la clase CContextMenuManager
, la clase CKeyboardManager
y la clase CUserToolsManager
.
La implementación predeterminada de CFrameImpl::OnLoadFrame
llama a LoadState
.
El parámetro lpszSectionName
no es la ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::LoadWindowPlacement
Lo llama el marco de trabajo cuando carga el tamaño y la ubicación de la ventana de marco principal desde el Registro.
virtual BOOL LoadWindowPlacement(
CRect& rectNormalPosition,
int& nFlags,
int& nShowCmd);
Parámetros
rectNormalPosition
[out] Rectángulo que contiene las coordenadas de la ventana de marco principal cuando se encuentra en la posición restaurada.
nFlags
[out] Marcas que controlan la posición de la ventana minimizada y cómo cambia el sistema operativo entre una ventana minimizada y una ventana restaurada.
nShowCmd
[out] Entero que especifica el estado de presentación de la ventana. Para obtener más información acerca de los posibles valores, consulte CWnd::ShowWindow
.
Valor devuelto
Su valor será distinto de cero en caso correcto, de lo contrario, será cero.
Comentarios
De manera predeterminada, MFC carga automáticamente la posición y el estado anteriores de la ventana de marco principal cuando se inicia la aplicación. Para obtener más información sobre cómo se almacena esta información en el Registro, consulte CWinAppEx::StoreWindowPlacement
.
Invalide este método si desea cargar información adicional sobre la ventana de marco principal.
CWinAppEx::m_bForceImageReset
Especifica si el marco de trabajo restablecerá todas las imágenes de la barra de herramientas cuando vuelva a cargar la ventana de marco que contiene la barra de herramientas.
BOOL m_bForceImageReset;
Comentarios
El miembro de datos m_bForceImageReset
es una variable protegida.
CWinAppEx::OnAppContextHelp
El marco de trabajo llama a este método cuando el usuario solicita ayuda de contexto para el cuadro de diálogo Personalización.
virtual void OnAppContextHelp(
CWnd* pWndControl,
const DWORD dwHelpIDArray[]);
Parámetros
pWndControl
[in] Puntero a un objeto de ventana para el que el usuario invocó la ayuda de contexto.
dwHelpIDArray[]
[in] Valor reservado.
Comentarios
Actualmente, este método está reservado para un uso futuro. La implementación predeterminada no hace nada y el marco no lo llama actualmente.
CWinAppEx::OnClosingMainFrame
El marco de trabajo llama a este método cuando una ventana de marco está procesando WM_CLOSE
.
virtual void OnClosingMainFrame(CFrameImpl* pFrameImpl);
Parámetros
pFrameImpl
[in] Un puntero a un objeto CFrameImpl
.
Comentarios
La implementación predeterminada de este método guarda el estado de pFrameImpl
.
CWinAppEx::OnViewDoubleClick
Llama al comando definido por el usuario asociado a una vista cuando el usuario hace doble clic en cualquier parte de esa vista.
virtual BOOL OnViewDoubleClick(
CWnd* pWnd,
int iViewId);
Parámetros
pWnd
[in] Puntero a un objeto derivado de la clase CView
.
iViewId
[in] Identificador de vista.
Valor devuelto
TRUE
si el marco encuentra un comando; de lo contrario, FALSE
.
Comentarios
Para admitir el comportamiento personalizado del mouse, debe llamar a esta función al procesar el mensaje WM_LBUTTONDBLCLK
. Este método ejecutará el comando asociado al identificador de vista proporcionado por iViewId
. Para obtener más información sobre el comportamiento personalizado del mouse, consulte Personalización del teclado y del mouse.
CWinAppEx::OnWorkspaceIdle
virtual BOOL OnWorkspaceIdle(CWnd*);
Parámetros
[in] CWnd*
\
Valor devuelto
Comentarios
CWinAppEx::PreLoadState
El marco de trabajo llama a este método inmediatamente antes de cargar el estado de la aplicación desde el Registro.
virtual void PreLoadState();
Comentarios
Invalide este método si desea realizar cualquier procesamiento inmediatamente antes de que el marco de trabajo cargue el estado de la aplicación.
CWinAppEx::PreSaveState
El marco de trabajo llama a este método inmediatamente antes de guardar el estado de la aplicación.
virtual void PreSaveState();
Comentarios
Invalide este método si desea realizar cualquier procesamiento inmediatamente antes de que el marco de trabajo guarde el estado de la aplicación.
CWinAppEx::ReloadWindowPlacement
Vuelve a cargar el tamaño y la ubicación de una ventana desde el Registro.
virtual BOOL ReloadWindowPlacement(CFrameWnd* pFrame);
Parámetros
pFrame
[in] Puntero a una ventana de marco.
Valor devuelto
Distinto de cero si el método se realizó correctamente; 0 si se produjo un error en la carga o no hay datos que cargar.
Comentarios
Use la función CWinAppEx::StoreWindowPlacement
para escribir el tamaño y la ubicación de una ventana en el Registro.
CWinAppEx::SaveCustomState
El marco de trabajo llama a este método después de guardar el estado de la aplicación en el Registro.
virtual void SaveCustomState();
Comentarios
Invalide este método si desea realizar algún procesamiento después de que la aplicación guarde el estado en el Registro. De forma predeterminada, este método no hace nada.
CWinAppEx::SaveState
Escribe el estado de la aplicación en el Registro de Windows.
virtual BOOL SaveState(
LPCTSTR lpszSectionName = NULL,
CFrameImpl* pFrameImpl = NULL);
BOOL SaveState(
CMDIFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
BOOL SaveState(
CFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
BOOL SaveState(
COleIPFrameWndEx* pFrame,
LPCTSTR lpszSectionName = NULL);
Parámetros
lpszSectionName
[in] Cadena que contiene la ruta de acceso relativa de una clave del Registro.
pFrameImpl
[in] Un puntero a un objeto CFrameImpl
. Este marco se guarda en el Registro de Windows.
pFrame
[in] Puntero a un objeto de ventana de marco. Este marco se guarda en el Registro de Windows.
Valor devuelto
TRUE
si es correcto; de lo contrario, FALSE
.
Comentarios
Este método guarda el estado de la aplicación y cualquier información de estado de la ventana de marco proporcionada. Si no proporciona una ventana de marco, el método solo guarda el estado de la aplicación. La información de la aplicación incluye el estado de la clase CMouseManager
, la clase CContextMenuManager
, la clase CKeyboardManager
y la clase CUserToolsManager
.
El parámetro lpszSectionName
no es la ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
CWinAppEx::SetRegistryBase
Establece la ruta de acceso predeterminada del Registro de la aplicación.
LPCTSTR SetRegistryBase(LPCTSTR lpszSectionName = NULL);
Parámetros
lpszSectionName
[in] Cadena que contiene la ruta de acceso de una clave del Registro.
Valor devuelto
Cadena que contiene la ruta de acceso de la ubicación predeterminada del Registro.
Comentarios
Todos los métodos de la clase CWinAppEx
que acceden al Registro se inician en una ubicación predeterminada. Use este método para cambiar esa ubicación predeterminada del Registro. Use CWinAppEx::GetRegistryBase
para recuperar la ubicación predeterminada del Registro.
CWinAppEx::ShowPopupMenu
Muestra un menú emergente.
virtual BOOL ShowPopupMenu(
UINT uiMenuResId,
const CPoint& point,
CWnd* pWnd);
Parámetros
uiMenuResId
[in] Identificador del recurso de menú.
point
[in] Elemento CPoint
que especifica la posición del menú en las coordenadas de la pantalla.
pWnd
[in] Puntero a la ventana que posee el menú emergente.
Valor devuelto
Distinto de cero si el menú emergente se muestra correctamente; de lo contrario, 0.
Comentarios
Este método muestra el menú asociado a uiMenuResId
.
Para admitir menús emergentes, debe tener un objeto CContextMenuManager
. Si no ha inicializado el objeto CContextMenuManager
, ShowPopupMenu
producirá un error.
CWinAppEx::StoreWindowPlacement
Lo llama el marco de trabajo para escribir el tamaño y la ubicación de la ventana de marco principal en el Registro.
virtual BOOL StoreWindowPlacement(
const CRect& rectNormalPosition,
int nFlags,
int nShowCmd);
Parámetros
nFlags
[in] Marcas que controlan la posición de la ventana minimizada y cómo cambia el sistema operativo entre una ventana minimizada y una ventana restaurada.
nShowCmd
[in] Entero que especifica el estado de presentación de la ventana. Para obtener más información acerca de los posibles valores, consulte CWnd::ShowWindow
.
rectNormalPosition
[in] Rectángulo que contiene las coordenadas de la ventana de marco principal cuando se encuentra en estado restaurado.
Valor devuelto
Su valor será distinto de cero en caso correcto, de lo contrario, será cero.
Comentarios
De manera predeterminada, MFC guarda automáticamente la posición y el estado de la ventana de marco principal antes de que se cierre la aplicación. Esta información se almacena en el Registro de Windows en la clave WindowPlacement en la ubicación predeterminada del Registro de la aplicación. Para obtener más información sobre la ubicación predeterminada del Registro de la aplicación, consulte CWinAppEx::GetRegistryBase
.
Invalide este método si desea almacenar información adicional sobre la ventana de marco principal.
CWinAppEx::WriteBinary
Escribe datos binarios en el registro.
BOOL WriteBinary(
LPCTSTR lpszEntry,
LPBYTE pData,
UINT nBytes);
Parámetros
lpszEntry
[in] Cadena que contiene el nombre de una clave del Registro.
pData
[in] Datos que se van a almacenar.
nBytes
[in] Tamaño en bytes de pData
.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
El parámetro lpszEntry
es el nombre de una entrada del Registro que está ubicada en la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
Si no existe la clave especificada por lpszEntry
, este método la creará.
CWinAppEx::WriteInt
Escribe datos numéricos en el registro.
BOOL WriteInt(
LPCTSTR lpszEntry,
int nValue);
Parámetros
lpszEntry
[in] Cadena que contiene el nombre de una clave del Registro.
nValue
[in] Datos que se van a almacenar.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
El parámetro lpszEntry
es el nombre de una entrada del Registro ubicada en la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
Si no existe la clave especificada por lpszEntry
, este método la creará.
CWinAppEx::WriteObject
Escribe datos derivados de la clase CObject
en el Registro.
BOOL WriteObject(
LPCTSTR lpszEntry,
CObject& obj);
Parámetros
lpszEntry
[in] Cadena que contiene el valor que se va a establecer.
obj
[in] Referencia a los datos de tipo CObject
que el método va a almacenar.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
Este método escribe los datos de obj
en el valor especificado en la clave del Registro predeterminada. Use CWinAppEx::GetRegistryBase
para determinar la clave del Registro actual.
CWinAppEx::WriteSectionBinary
Escribe datos binarios en un valor del Registro.
BOOL WriteSectionBinary(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
LPBYTE pData,
UINT nBytes);
Parámetros
lpszSubSection
[in] Cadena que contiene el nombre de una clave del Registro
lpszEntry
[in] Cadena que contiene el valor que se va a establecer.
pData
[in] Datos que se van a escribir en el Registro.
nBytes
[in] Tamaño en bytes de pData
.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
El parámetro lpszSubSection
no es la ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
Si no existe la clave especificada por lpszEntry
, este método la creará.
CWinAppEx::WriteSectionInt
Escribe datos numéricos en el registro.
BOOL WriteSectionInt(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
int nValue);
Parámetros
lpszSubSection
[in] Cadena que contiene la ruta de acceso relativa de una clave del Registro.
lpszEntry
[in] Cadena que contiene el valor que se va a establecer.
nValue
[in] Datos que se van a escribir en el Registro.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
El parámetro lpszSubSection
no es una ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega a la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
Si no existe la clave especificada por lpszEntry
, este método la creará.
CWinAppEx::WriteSectionObject
Escribe datos derivados de la clase CObject
en un valor del Registro específico.
BOOL WriteSectionObject(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
CObject& obj);
Parámetros
lpszSubSection
[in] Cadena que contiene el nombre de una clave del Registro.
lpszEntry
[in] Cadena que contiene el nombre del valor que se va a establecer.
obj
[in] Datos que se van a almacenar.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
El parámetro lpszSubSection
no es una ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
Si el valor especificado por lpszEntry
no existe en la clave del Registro especificada por lpszSubSection
, este método creará ese valor.
CWinAppEx::WriteSectionString
Escribe datos de cadena en un valor del Registro.
BOOL WriteSectionString(
LPCTSTR lpszSubSection,
LPCTSTR lpszEntry,
LPCTSTR lpszValue);
Parámetros
lpszSubSection
[in] Cadena que contiene el nombre de una clave del Registro.
lpszEntry
[in] Cadena que contiene el valor que se va a establecer.
lpszValue
[in] Datos de cadena que se van a escribir en el Registro.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
El parámetro lpszSubSection
no es una ruta de acceso absoluta de una entrada del Registro. Es una ruta de acceso relativa que se agrega al final de la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
Si el valor especificado por lpszEntry
no existe en lpszSubSection
, este método lo creará.
CWinAppEx::WriteString
Escribe datos de cadena en el Registro.
BOOL WriteString(
LPCTSTR lpszEntry,
LPCTSTR lpszValue);
Parámetros
lpszEntry
[in] Cadena que contiene el nombre de una clave del Registro.
lpszValue
[in] Datos que se van a almacenar.
Valor devuelto
TRUE
si este método es correcto; en caso contrario, FALSE
.
Comentarios
El parámetro lpszEntry
es el nombre de una entrada del Registro ubicada en la clave del Registro predeterminada de la aplicación. Para obtener o establecer la clave del Registro predeterminada, use los métodos CWinAppEx::GetRegistryBase
y CWinAppEx::SetRegistryBase
respectivamente.
Si no existe la clave especificada por lspzEntry
, este método la creará.
Consulte también
Gráfico de jerarquías
Clases
CWinApp
(clase)
CMouseManager
(clase)
CContextMenuManager
(clase)
CKeyboardManager
(clase)
CUserToolsManager
(clase)