Üç temel dialog event'i
Bir dialog açıldığında sırasıyla üç event tetiklenir:
- BEFORE: dialog açıldığında ilk tetiklenen event; kontroller tanımlanmıştır ama dialog henüz görünür değildir.
- AFTER: BEFORE'dan sonra çalışır, dialog hâlâ görünür değildir.
- ONSHOW: AFTER'dan sonra, dialog kullanıcı arayüzünde göründüğünde tetiklenir.
Bu event'leri manuel olarak da çağırabilirsiniz — bir dialog metodunu çağırmaktan farkı yoktur:
THIS.AFTER();
THIS.ONSHOW();
CALL DIALOG ile dialog açmak
Bir transaction'ın ilk (start) dialog'u otomatik açılır; ikinci yöntem ise kod içinden CALL DIALOG komutuyla dialog açmaktır:
CALL DIALOG MYDIALOG;
CALL DIALOG MYDIALOG WITH LOCATION 10, 10 SIZE 400, 300;
CALL DIALOG çalıştığı metodun kodunu durdurur, yeni dialog kapatılana kadar bir sonraki satıra geçilmez — tıpkı arayüzlü bir fonksiyon çağrısı gibi düşünülebilir. Dialog kapatılınca çağıran metodun kalan kodu çalışmaya devam eder.
Dialog'u kapatmak: SHUTDOWN
SHUTDOWN;
SHUTDOWN en son açılan dialog'u kapatır ve bir önceki dialog'a döner. Kapatılan dialog, transaction'ın son dialog'uysa transaction da otomatik kapanır.
Kapanan dialog'un değişkenleri bellekte kalır
Bir dialog kapandığında, o dialog tarafından tanımlanan global değişkenler bellekten silinmez, erişilebilir kalmaya devam eder. Bu yüzden yeni değişken/kontrol isimleri seçerken önceden kapanmış dialog'larla isim çakışması olup olmadığını göz önünde bulundurmak gerekir.
Sonuç
Dialog akışını yönetirken üç şeyi hatırlamak yeterli: event sırası (BEFORE → AFTER → ONSHOW), CALL DIALOG'un kodu durdurup dialog kapanınca devam etmesi, ve SHUTDOWN ile geri dönüş. Kalan her şey bu üçünün üzerine kurulu.
Yorumlar (0)
Yorum Yaz