HTML Süzgeçleri ve Formları

HTML belgesindeki tüm kontrol öğelerini ve form olaylarını kullanabilirsiniz. Bu zamana kadar hiç değişmemiş pek çok olay olmuştur (örneğin, odaklanma olayları). ONFOCUS ve ONBLUR olarak dışarı aktarılmaya devam edeceklerdir, JavaScript ve LibreOffice Basic içinse SDONFOCUS, SDONBLUR olarak dışarı aktarılırlar.

Dinleyici arayüzü ve olayın metod ismini içeren genel isimler tüm diğer olaylar için kullanılır: XListener::method olarak kayıtlı bir olay şu şekilde dışarı aktarılır

SDEvent-XListener-method = "/* event-code */"

XListener- ve bu seçeneğin yöntem bileşenlerinin büyük/küçük harflere duyarlı olduğuna dikkat edin.

Kontrollerin olay işlemesi LibreOffice API tarafından ele alınır. Eğer bir kontrole bir olay atarsanız, nesne kendisini belli kontrol olayı için dahili bir "Dinleyici" olarak kaydeder. Bunu yapmak için, nesnenin bellir bir arayüz kullanması gerekir, örneğin XFocusListener Arayüzü, böylece olaylara odaklanmak için tepki verebilir. Olay oluştuğunda, kontrol odağı yakaladığında ozel bir Dinleyici çalıştırır. Olaya atanmış dahili kayıtlı nesne daha sonra JavaScript veya LibreOffice Basic kodunu çalıştırır.

HTML süzgeci bu dinleyici arayüzlerini ve metod isimlerini tam olarak kullandığından istendiğinde olayları içeri veya dışarı aktarabilir. Bir odak olayını şu şekilde kaydedebilirsiniz

<INPUT TYPE=text ONFOCUS="/* code */"

den farklı olarak

<INPUT TYPE=text SDEvent-XFocusListener-focusGained="/* code */"

kaydol. Böylece liste kutularında önerilmeyenler de dahil olmak üzere istenilen olaylara kaydolunabilir. Olayların betik dilini tanımlamak için, şu satırı belge başlığına yazabilirsiniz:

<META HTTP-EQUIV="content-script-type" CONTENT="...">

CONTENT olarak, örneğin, LibreOffice Basic için "text/x-StarBasic" ya da JavaScript için "text/JavaScript" kullanabilirsiniz. Hiçbir girdi yapılmadı ise, JavaScript olarak kabul edilir.

Dışa aktarım sırasında, varsayılan betik dili makro yönetiminde bulunan ilk modüle bağlı olarak tanımlancaktır. Olaylar için, her belgede sadece tek bir dil kullanılabilir.

Please support us!