Sebelum Anda mensintesis dan mengirim acara kustom, Anda harus memahami bagaimana alat toolkit UI(User Interface) Memungkinkan pengguna untuk berinteraksi dengan aplikasi Anda. Unity saat ini mendukung tiga sistem UI. More info
Lihat di Glossary allocates dan mengirim acara sistem operasi.event systemCara mengirim peristiwa ke objek dalam aplikasi berdasarkan input, apakah keyboard, mouse, sentuh, atau input kustom. Sistem Acara terdiri dari beberapa komponen yang bekerja sama untuk mengirim acara. More info
Lihat di Glossary allocates and sends operating system events.
Sistem acara menggunakan kolam acara untuk menghindari mengalokasikan objek acara berulang. Untuk mensintesis dan mengirimkan acara Anda sendiri, Anda harus mengalokasikan dan mengirim acara dengan mengikuti langkah yang sama:
using
untuk memastikan kembali ke kolam acara.element.SendEvent()
.Jika Anda ingin mengirim peristiwa yang berasal dari sistem operasi, seperti peristiwa keyboard dan beberapa acara mouse, gunakan UnityEngine.Event
untuk menginisialisasi acara UI Toolkit.
Contoh berikut menunjukkan bagaimana cara mensintesis dan mengirim acara:
void SynthesizeAndSendKeyDownEvent(IPanel panel, KeyCode code,
char character = '\0', EventModifiers modifiers = EventModifiers.None)
{
// Create a UnityEngine.Event to hold initialization data.
// Also, this event will be forwarded to IMGUIContainer.m_OnGUIHandler
var evt = new Event() {
type = EventType.KeyDownEvent,
keyCode = code,
character = character,
modifiers = modifiers
};
using (KeyDownEvent keyDownEvent = KeyDownEvent.GetPooled(evt))
{
panel.SendEvent(keyDownEvent);
}
}