BT Sözlüğü › Programlama › Geçiş olayları (X11)

Geçiş olayları (X11)

Programlama Svenska → Güncellendi: 2026-10-10

EnterNotify ve LeaveNotify; imleç bir pencere sınırını geçtiğinde X sunucusunun gönderdiği olaylar. Hover efektlerinin, "odak fareyi izler" davranışının ve epeyce kafa karışıklığının temeli.

İmleç bir pencereden çıkıp başkasına girdiğinde sunucu ilkine LeaveNotify, ikincisine EnterNotify gönderir; istemci bunları olay maskesinde EnterWindowMask ve LeaveWindowMask ile istemişse. Pencereler bir ağaç oluşturur; bu yüzden bir uygulamadaki torun pencereden başka bir uygulamadaki pencereye geçiş araya giren pencerelerden de geçer ve onlar da virtual işaretli olaylarla bilgilendirilir. detail alanı diğer pencerenin hiyerarşide nerede durduğunu söyler: NotifyAncestor, NotifyInferior, NotifyNonlinear ve sanal varyantları. mode alanı imlecin gerçekten hareket edip etmediğini ya da olayın bir grab alınmasının veya bırakılmasının yan etkisi olup olmadığını söyler.

Odak fareyi izler kipindeki pencere yöneticileri istemci çerçevelerinde EnterNotify'ı dinleyip XSetInputFocus çağırmaktan başka bir şey yapmaz. İpuçları, ışıklanan düğmeler ve üzerine gelince açılan menüler aynı şeyin bir kat aşağısıdır. Kafa karışıklığı, imleç hiç kıpırdamadığı halde sunucunun geçiş olayı üretmesinden gelir: altındaki bir pencerenin haritalanması, bir menü açan grab, çerçeveleri yeniden düzenleyen bir yönetici. Her LeaveNotify'ı kullanıcının gittiği sanan program, tıklamanın ortasında ipuçlarını kaybeder; NotifyInferior (imleç ayrılmadı, kendi çocuklarınızdan birine girdi) ise herkesin bir kez yaptığı hatadır.

← Sözlüğe dön