CoreWindow Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta l'app UWP con eventi di input e comportamenti di base dell'interfaccia utente.
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
- Ereditarietà
- Attributi
- Implementazioni
Requisiti Windows
Famiglia di dispositivi |
Windows 10 (è stato introdotto in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)
|
Commenti
Le nuove istanze di questa classe vengono ottenute chiamando CoreApplication.CreateNewView e quindi controllando la proprietà CoreWindow nell'istanza di CoreApplicationView restituita. In alternativa, è possibile ottenere istanze coreWindow esistenti per un'app in esecuzione dalla proprietà CoreApplication.Views o chiamando CoreWindow.GetForCurrentThread, come illustrato nell'esempio seguente.
// 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
Questa classe non è agile, il che significa che è necessario considerare il modello di threading e il comportamento di marshalling. Per altre info, vedi Threading e marshalling (C++/CX).
Cronologia delle versioni
Versione di Windows | Versione dell'SDK | Valore aggiunto |
---|---|---|
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 |
Proprietà
ActivationMode |
Ottiene un valore che indica lo stato di attivazione della finestra. |
AutomationHostProvider |
Ottiene il provider di automazione assegnato a questa finestra. |
Bounds |
Ottiene un valore Rect che contiene l'origine, l'altezza e la larghezza dell'area client della finestra, in pixel indipendenti dal dispositivo (DIP). |
CustomProperties |
Ottiene il set di proprietà personalizzate per la finestra. |
Dispatcher |
Ottiene il dispatcher eventi per la finestra. |
DispatcherQueue |
Ottiene dispatcherQueue per la finestra. |
FlowDirection |
Ottiene o imposta l'origine orizzontale dell'allineamento dell'ordine di lettura della finestra. Se la lingua specificata dall'interfaccia utente è allineata a destra (ad esempio in arabo o ebraico), l'origine orizzontale del layout di lettura per la finestra si trova sul bordo destro. |
IsInputEnabled |
Ottiene o imposta un valore che indica se l'input è abilitato per l'app. |
PointerCursor |
Ottiene o imposta il cursore del puntatore utilizzato dall'app. |
PointerPosition |
Ottiene le coordinate client del puntatore. |
UIContext |
Ottiene l'identificatore di contesto per la finestra principale. |
Visible |
Ottiene un valore che indica se la finestra è visibile. |
Metodi
Activate() |
Attiva la finestra. Questo metodo viene chiamato per presentare la finestra sullo schermo. |
Close() |
Chiude una finestra secondaria ed esce dal ciclo di messaggi. |
GetAsyncKeyState(VirtualKey) |
Recupera in modo asincrono lo stato di una chiave virtuale. |
GetCurrentKeyEventDeviceId() |
Recupera l'ID univoco per il dispositivo di input che ha generato questo evento chiave.
|
GetForCurrentThread() |
Ottiene l'istanza di CoreWindow per il thread attualmente attivo. |
GetKeyState(VirtualKey) |
Recupera lo stato di una chiave virtuale. |
ReleasePointerCapture() |
Annulla l'associazione dell'input del puntatore dall'app, se precedentemente associato tramite SetPointerCapture e ripristina l'elaborazione normale dell'input del puntatore. |
SetPointerCapture() |
Associa l'input del puntatore all'app. Dopo l'acquisizione di un puntatore, tutti gli eventi successivi associati a tale puntatore vengono attivati dall'app. |
Eventi
Activated |
Viene attivato quando la finestra completa l'attivazione o la disattivazione. |
AutomationProviderRequested |
Viene generato quando viene generata una richiesta per un gestore di automazione. |
CharacterReceived |
Viene generato quando viene ricevuto un nuovo carattere dalla coda di input. |
Closed |
Si verifica quando una finestra viene chiusa (o l'app termina completamente). |
ClosestInteractiveBoundsRequested |
Nota Non destinato all'uso generale. Si verifica quando un gestore di input del framework richiede il rettangolo di delimitazione di un elemento interattivo all'interno di un rettangolo di delimitazione specifico e più vicino a un puntatore specifico. |
InputEnabled |
Si verifica quando l'input è abilitato o disabilitato per l'app. |
KeyDown |
Evento generato quando viene premuto un tasto non di sistema. Il tipo delegato per questo evento è TypedEventHandler<TSender,TResult>, dove TSender è di tipo CoreWindow e TResult è di tipo KeyEventArgs. |
KeyUp |
Evento generato quando un tasto non di sistema viene rilasciato dopo una pressione. Il tipo delegato per questo evento è TypedEventHandler<TSender,TResult>, dove TSender è di tipo CoreWindow e TResult è di tipo KeyEventArgs. |
PointerCaptureLost |
Si verifica quando un puntatore passa a un'altra app. Questo evento viene generato dopo PointerExited ed è l'evento finale ricevuto dall'app per questo puntatore. |
PointerEntered |
Si verifica quando un puntatore si sposta nel rettangolo di selezione dell'app. |
PointerExited |
Si verifica quando il puntatore si sposta all'esterno del rettangolo di selezione dell'app. |
PointerMoved |
Si verifica quando un puntatore si sposta all'interno del rettangolo di selezione dell'app. |
PointerPressed |
Si verifica quando si fa clic su un pulsante del mouse o la superficie del digitalizzatore è stata toccata da un dito o da una penna, all'interno del rettangolo di delimitazione dell'app. Una sessione di interazione inizia quando viene rilevato un singolo contatto e termina quando il contatto e tutti i contatti successivi nella stessa sessione non vengono più rilevati. Questo evento viene generato per il primo contatto rilevato nella sessione di interazione. I dettagli per tutti gli altri puntatori a contatto simultanei vengono esposti tramite un oggetto PointerPointProperties (ottenuto ottenendo la proprietà Properties da un oggetto PointerPoint ). |
PointerReleased |
Si verifica quando viene rilasciato un pulsante del mouse premuto oppure un contatto tocco o penna viene sollevato dalla superficie del digitalizzatore, all'interno del rettangolo di delimitazione dell'app (o all'esterno del rettangolo di delimitazione, se viene acquisito il puntatore). |
PointerRoutedAway |
Si verifica nell'oggetto di input che riceve l'input del puntatore quando il puntatore viene reindirizzato a un altro oggetto di input (possibilmente in un processo separato). |
PointerRoutedReleased |
Si verifica in tutti gli oggetti di input associati, ma non attualmente ricevono input da, un puntatore che genera un evento CoreIndependentInputSource.PointerReleased su un oggetto di input. |
PointerRoutedTo |
Si verifica quando l'input del puntatore acquisito in precedenza viene recapitato a un altro oggetto, passa al recapito a questo oggetto. |
PointerWheelChanged |
Evento generato quando la rotellina del mouse viene ruotata. Il tipo delegato per questo evento è TypedEventHandler<TSender,TResult>, dove TSender è di tipo CoreWindow e TResult è di tipo PointerEventArgs. |
ResizeCompleted |
Si verifica quando un utente termina il ridimensionamento della finestra. |
ResizeStarted |
Si verifica quando un utente inizia a ridimensionare la finestra. |
SizeChanged |
Si verifica quando viene modificata la dimensione della finestra. |
TouchHitTesting |
Si verifica quando un'area di contatto tocco interseca il rettangolo di delimitazione (o poligono) di una finestra registrata per l'hit testing tocco. |
VisibilityChanged |
Viene generato quando viene modificata la visibilità della finestra. |