CoreWindow Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa la aplicación para UWP con eventos de entrada y comportamientos básicos de la interfaz de usuario.
public ref class CoreWindow sealed : ICoreWindow
public ref class CoreWindow sealed : ICorePointerRedirector, ICoreWindow
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
class CoreWindow final : ICoreWindow
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
class CoreWindow final : ICorePointerRedirector, ICoreWindow
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
public sealed class CoreWindow : ICoreWindow
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
public sealed class CoreWindow : ICorePointerRedirector, ICoreWindow
Public NotInheritable Class CoreWindow
Implements ICoreWindow
Public NotInheritable Class CoreWindow
Implements ICorePointerRedirector, ICoreWindow
- Herencia
- Atributos
- Implementaciones
Requisitos de Windows
Familia de dispositivos |
Windows 10 (se introdujo en la versión 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)
|
Comentarios
Las nuevas instancias de esta clase se obtienen llamando a CoreApplication.CreateNewView e inspeccionando la propiedad CoreWindow en la instancia de CoreApplicationView devuelta. También puede obtener instancias de CoreWindow existentes para una aplicación en ejecución desde la propiedad CoreApplication.Views o llamando a CoreWindow.GetForCurrentThread, como se muestra en el ejemplo siguiente.
// App.cpp
...
// An implementation of IFrameworkView::Run.
void Run()
{
CoreWindow window{ CoreWindow::GetForCurrentThread() };
window.Activate();
CoreDispatcher dispatcher{ window.Dispatcher() };
dispatcher.ProcessEvents(CoreProcessEventsOption::ProcessUntilQuit);
}
// The CoreApplication::Run call indirectly calls the App::Run function above.
int __stdcall wWinMain(HINSTANCE, HINSTANCE, PWSTR, int)
{
CoreApplication::Run(App());
}
void MyCoreWindowEvents::Run() // this is an implementation of IFrameworkView::Run() used to show context
{
CoreWindow::GetForCurrentThread()->Activate();
/...
CoreWindow::GetForCurrentThread()->Dispatcher->ProcessEvents(CoreProcessEventsOption::ProcessUntilQuit);
}
Nota
Esta clase no es ágil, lo que significa que debe tener en cuenta su modelo de subprocesos y el comportamiento de serialización. Para obtener más información, consulta Subprocesos y serialización (C++/CX).
Historial de versiones
Versión de Windows | Versión del SDK | Valor agregado |
---|---|---|
1511 | 10586 | PointerRoutedAway |
1511 | 10586 | PointerRoutedReleased |
1511 | 10586 | PointerRoutedTo |
1607 | 14393 | ClosestInteractiveBoundsRequested |
1607 | 14393 | GetCurrentKeyEventDeviceId |
1703 | 15063 | ResizeCompleted |
1703 | 15063 | ResizeStarted |
1709 | 16299 | ActivationMode |
1709 | 16299 | DispatcherQueue |
1903 | 18362 | UIContext |
Propiedades
ActivationMode |
Obtiene un valor que indica el estado de activación de la ventana. |
AutomationHostProvider |
Obtiene el proveedor de automatización asignado a esta ventana. |
Bounds |
Obtiene un valor rect que contiene el origen, el alto y el ancho del área de cliente de la ventana, en píxeles independientes del dispositivo (DIP). |
CustomProperties |
Obtiene el conjunto de propiedades personalizadas para la ventana. |
Dispatcher |
Obtiene el distribuidor de eventos de la ventana. |
DispatcherQueue |
Obtiene dispatcherQueue para la ventana. |
FlowDirection |
Obtiene o establece el origen horizontal de la alineación del orden de lectura de la ventana. Si el idioma especificado por la interfaz de usuario está alineado a la derecha (como en árabe o hebreo), el origen horizontal del diseño de lectura de la ventana está en el borde derecho. |
IsInputEnabled |
Obtiene o establece un valor que indica si la entrada está habilitada para la aplicación. |
PointerCursor |
Obtiene o establece el cursor de puntero utilizado por la aplicación. |
PointerPosition |
Obtiene las coordenadas de cliente del puntero. |
UIContext |
Obtiene el identificador de contexto de la ventana principal. |
Visible |
Obtiene un valor que indica si la ventana está visible. |
Métodos
Activate() |
Activa la ventana. Se llama a este método para presentar la ventana en la pantalla. |
Close() |
Cierra una ventana secundaria y sale del bucle de mensajes. |
GetAsyncKeyState(VirtualKey) |
Recupera de forma asincrónica el estado de una clave virtual. |
GetCurrentKeyEventDeviceId() |
Recupera el identificador único del dispositivo de entrada que generó este evento de clave.
|
GetForCurrentThread() |
Obtiene la instancia de CoreWindow para el subproceso activo actualmente. |
GetKeyState(VirtualKey) |
Recupera el estado de una clave virtual. |
ReleasePointerCapture() |
Desasocia la entrada del puntero de la aplicación, si se ha asociado previamente a través de SetPointerCapture, y restaura el procesamiento de entrada de puntero normal. |
SetPointerCapture() |
Asocia la entrada de puntero a la aplicación. Una vez capturado un puntero, la aplicación desencadena todos los eventos posteriores asociados a ese puntero. |
Eventos
Activated |
Se desencadena cuando la ventana completa la activación o desactivación. |
AutomationProviderRequested |
Se desencadena cuando se genera una solicitud para un controlador de automatización. |
CharacterReceived |
Se desencadena cuando la cola de entrada recibe un nuevo carácter. |
Closed |
Se produce cuando se cierra una ventana (o la aplicación finaliza por completo). |
ClosestInteractiveBoundsRequested |
Nota No está pensado para uso general. Se produce cuando un administrador de entrada de marco solicita el rectángulo delimitador de un elemento interactivo dentro de un rectángulo delimitador específico y más cercano a un puntero específico. |
InputEnabled |
Se produce cuando la entrada está habilitada o deshabilitada para la aplicación. |
KeyDown |
Evento que se genera cuando se presiona una tecla que no es del sistema. El tipo de delegado para este evento es TypedEventHandler<TSender,TResult>, donde TSender es de tipo CoreWindow y TResult es de tipo KeyEventArgs. |
KeyUp |
Evento que se genera cuando se libera una tecla que no es del sistema después de presionar. El tipo de delegado para este evento es TypedEventHandler<TSender,TResult>, donde TSender es de tipo CoreWindow y TResult es de tipo KeyEventArgs. |
PointerCaptureLost |
Se produce cuando un puntero se mueve a otra aplicación. Este evento se genera después de PointerExited y es el evento final recibido por la aplicación para este puntero. |
PointerEntered |
Se produce cuando un puntero se mueve al rectángulo de selección de la aplicación. |
PointerExited |
Se produce cuando el puntero se mueve fuera del rectángulo de selección de la aplicación. |
PointerMoved |
Se produce cuando un puntero se mueve dentro del rectángulo de selección de la aplicación. |
PointerPressed |
Se produce cuando se hace clic en un botón del mouse o se toca la superficie del digitalizador mediante un dedo o lápiz, dentro del rectángulo delimitador de la aplicación. Una sesión de interacción se inicia cuando se detecta un único contacto y finaliza cuando ese contacto y todos los contactos subsiguientes de la misma sesión ya no se detectan. Este evento se desencadena para el primer contacto detectado en la sesión de interacción. Los detalles de todos los demás punteros de contacto simultáneos se exponen a través de un objeto PointerPointProperties (obtenido obteniendo la propiedad Properties de un objeto PointerPoint ). |
PointerReleased |
Se produce cuando se suelta un botón del mouse presionado o se levanta un contacto táctil o de lápiz de la superficie del digitalizador, dentro del rectángulo delimitador de la aplicación (o fuera del rectángulo delimitador, si se captura el puntero). |
PointerRoutedAway |
Se produce en el objeto de entrada que recibe la entrada del puntero cuando el puntero se redirige a otro objeto de entrada (posiblemente en un proceso independiente). |
PointerRoutedReleased |
Se produce en todos los objetos de entrada asociados, pero no recibe actualmente la entrada de , un puntero que desencadena un evento CoreIndependentInputSource.PointerReleased en un objeto de entrada. |
PointerRoutedTo |
Se produce cuando la entrada de puntero capturada se entregaba anteriormente a otro objeto, pasa a entregarse a este objeto. |
PointerWheelChanged |
Evento que se genera cuando se gira la rueda del mouse. El tipo de delegado para este evento es TypedEventHandler<TSender,TResult>, donde TSender es de tipo CoreWindow y TResult es de tipo PointerEventArgs. |
ResizeCompleted |
Se produce cuando un usuario termina de cambiar el tamaño de la ventana. |
ResizeStarted |
Se produce cuando un usuario empieza a cambiar el tamaño de la ventana. |
SizeChanged |
Se produce cuando se cambia el tamaño de la ventana. |
TouchHitTesting |
Se produce cuando un área de contacto táctil interseca el rectángulo delimitador (o polígono) de una ventana registrada para las pruebas de posicionamiento táctil. |
VisibilityChanged |
Se desencadena cuando se cambia la visibilidad de la ventana. |