Bagikan melalui


CoreWindow Kelas

Definisi

Mewakili aplikasi UWP dengan peristiwa input dan perilaku antarmuka pengguna dasar.

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
Warisan
Object Platform::Object IInspectable CoreWindow
Atribut
Penerapan

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)

Keterangan

Instans baru kelas ini diperoleh dengan memanggil CoreApplication.CreateNewView lalu memeriksa properti CoreWindow pada instans CoreApplicationView yang dikembalikan. Atau Anda dapat memperoleh instans CoreWindow yang ada untuk aplikasi yang sedang berjalan dari properti CoreApplication.Views , atau dengan memanggil CoreWindow.GetForCurrentThread, seperti yang terlihat dalam contoh berikut.

// 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);
}

Catatan

Kelas ini tidak lincah, yang berarti Anda perlu mempertimbangkan model utas dan perilaku marshalingnya. Untuk informasi selengkapnya, lihat Threading dan Marshaling (C++/CX).

Riwayat versi

Versi Windows Versi SDK Nilai ditambahkan
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

Properti

ActivationMode

Mendapatkan nilai yang menunjukkan status aktivasi jendela.

AutomationHostProvider

Mendapatkan penyedia otomatisasi yang ditetapkan ke jendela ini.

Bounds

Mendapatkan nilai Rect yang berisi asal, tinggi, dan lebar area klien jendela, dalam piksel independen perangkat (DIP).

CustomProperties

Mendapatkan sekumpulan properti kustom untuk jendela.

Dispatcher

Mendapatkan dispatcher peristiwa untuk jendela.

DispatcherQueue

Mendapatkan DispatcherQueue untuk jendela.

FlowDirection

Mendapatkan atau mengatur asal horizontal dari perataan urutan baca jendela. Jika bahasa yang ditentukan oleh antarmuka pengguna diratakan kanan (seperti dalam bahasa Arab atau Ibrani), asal horizontal tata letak baca untuk jendela berada di tepi kanan.

IsInputEnabled

Mendapatkan atau menetapkan nilai yang menunjukkan apakah input diaktifkan untuk aplikasi.

PointerCursor

Mendapatkan atau mengatur kursor penunjuk yang digunakan oleh aplikasi.

PointerPosition

Mendapatkan koordinat klien penunjuk.

UIContext

Mendapatkan pengidentifikasi konteks untuk jendela inti.

Visible

Mendapatkan nilai yang menunjukkan apakah jendela terlihat.

Metode

Activate()

Mengaktifkan jendela. Metode ini dipanggil untuk menyajikan jendela di layar.

Close()

Menutup jendela sekunder dan keluar dari perulangan pesan.

GetAsyncKeyState(VirtualKey)

Secara asinkron mengambil status kunci virtual.

GetCurrentKeyEventDeviceId()

Mengambil ID unik untuk perangkat input yang menghasilkan peristiwa kunci ini.

GetCurrentKeyEventDeviceId tidak didukung untuk semua perangkat input.

GetForCurrentThread()

Mendapatkan instans CoreWindow untuk utas yang saat ini aktif.

GetKeyState(VirtualKey)

Mengambil status kunci virtual.

ReleasePointerCapture()

Memisahkan input pointer dari aplikasi, jika sebelumnya terkait melalui SetPointerCapture, dan memulihkan pemrosesan input pointer normal.

SetPointerCapture()

Mengaitkan input pointer dengan aplikasi. Setelah pointer ditangkap, semua peristiwa berikutnya yang terkait dengan pointer tersebut dipicu oleh aplikasi.

Acara

Activated

Diaktifkan saat jendela selesai aktivasi atau pennonaktifkanan.

AutomationProviderRequested

Diaktifkan ketika permintaan untuk handler otomatisasi dihasilkan.

CharacterReceived

Diaktifkan saat karakter baru diterima oleh antrean input.

Closed

Terjadi saat jendela ditutup (atau aplikasi berakhir sama sekali).

ClosestInteractiveBoundsRequested

Catatan

Tidak ditujukan untuk penggunaan umum.

Terjadi ketika manajer input kerangka kerja meminta persegi panjang pembatas elemen interaktif dalam persegi panjang pembatas tertentu dan paling dekat dengan penunjuk tertentu.

InputEnabled

Terjadi saat input diaktifkan atau dinonaktifkan untuk aplikasi.

KeyDown

Peristiwa yang dinaikkan saat tombol non-sistem ditekan.

Jenis delegasi untuk peristiwa ini adalah TypedEventHandler<TSender,TResult>, di mana TSender berjenis CoreWindow, dan TResult berjenis KeyEventArgs.

KeyUp

Peristiwa yang dinaikkan saat kunci non-sistem dirilis setelah tekan.

Jenis delegasi untuk peristiwa ini adalah TypedEventHandler<TSender,TResult>, di mana TSender berjenis CoreWindow, dan TResult berjenis KeyEventArgs.

PointerCaptureLost

Terjadi saat penunjuk berpindah ke aplikasi lain. Kejadian ini dimunculkan setelah PointerExited dan merupakan peristiwa akhir yang diterima oleh aplikasi untuk pointer ini.

PointerEntered

Terjadi saat penunjuk bergerak ke kotak pembatas aplikasi.

PointerExited

Terjadi saat penunjuk bergerak di luar kotak pembatas aplikasi.

PointerMoved

Terjadi saat penunjuk bergerak di dalam kotak pembatas aplikasi.

PointerPressed

Terjadi ketika tombol mouse diklik, atau permukaan digitizer telah disentuh oleh jari atau pena, di dalam persegi panjang pembatas aplikasi.

Sesi interaksi dimulai ketika satu kontak terdeteksi dan berakhir ketika kontak tersebut, dan semua kontak berikutnya dalam sesi yang sama, tidak lagi terdeteksi.

Kejadian ini diaktifkan untuk kontak pertama yang terdeteksi dalam sesi interaksi. Detail untuk semua penunjuk kontak bersamaan lainnya diekspos melalui objek PointerPointProperties (diperoleh dengan mendapatkan properti Properti dari objek PointerPoint ).

PointerReleased

Terjadi ketika tombol mouse yang ditekan dilepaskan, atau kontak sentuhan atau pena diangkat dari permukaan digitizer, dalam persegi panjang pembatas aplikasi (atau di luar persegi panjang pembatas, jika penunjuk ditangkap).

PointerRoutedAway

Terjadi pada objek input yang menerima input pointer ketika pointer dialihkan ke objek input lain (mungkin dalam proses terpisah).

PointerRoutedReleased

Terjadi pada semua objek input yang pernah terkait dengan, tetapi saat ini tidak menerima input dari, pointer yang mengaktifkan peristiwa CoreIndependentInputSource.PointerReleased pada objek input.

PointerRoutedTo

Terjadi ketika menangkap input pointer yang sebelumnya dikirimkan ke objek lain, transisi untuk dikirimkan ke objek ini.

PointerWheelChanged

Peristiwa yang dinaikkan saat roda mouse diputar.

Jenis delegasi untuk peristiwa ini adalah TypedEventHandler<TSender,TResult>, di mana TSender berjenis CoreWindow, dan TResult berjenis PointerEventArgs.

ResizeCompleted

Terjadi ketika pengguna selesai mengubah ukuran jendela.

ResizeStarted

Terjadi ketika pengguna mulai mengubah ukuran jendela.

SizeChanged

Terjadi ketika ukuran jendela diubah.

TouchHitTesting

Terjadi ketika area kontak sentuh bersinggungan dengan persegi panjang pembatas (atau poligon) jendela yang terdaftar untuk pengujian sentuhan hit.

VisibilityChanged

Diaktifkan saat visibilitas jendela diubah.

Berlaku untuk

Lihat juga