Olaylar ve işlevler
Olaylar sekmesi: nesne ve sayfa olayları, olaya bağlanan işlev listesi, işlevlerin sıralı çalışması, tuş koşulu, yetki ve izleyici kısıtları; örnekler.
Olay ve işlev
Operatörün bir nesneye tıklaması, bir tuşa basması ya da sayfanın açılması birer olaydır. Her olaya bir işlev listesi bağlanır: tag'e değer yaz, bit ters çevir, sayfa aç, betik çalıştır … Olay olunca liste yukarıdan aşağıya çalışır. İşlevlerin tam başvurusu İşlev başvurusu konusundadır; bu konu olayları ve çalışma kurallarını anlatır.
Bir nesnenin olayları nesnede, sayfanın olayları sayfada tanımlanır: nesneyi seçip Denetçi'nin Olaylar alt sekmesini açın; hiçbir nesne seçili değilken aynı sekme sayfanın olaylarını gösterir. Olay tanımları Studio'da saklanır; Live uygular.
123456- Olay listesi — nesnede 13 olay; sağdaki sayı işlev adedidir.
- İşlev — satırdan işlev değiştirilir.
- Parametreler — işleve göre tag, değer, sayfa …
- ↑ ↓ × — sırayı değiştirir, işlevi siler.
- <İşlev ekle> — listenin sonuna yeni işlev.
- İpucu — seçili olayın ne zaman çalıştığı.
- Olay listesi (solda)
- Seçili nesnenin ya da sayfanın olayları. Olayın yanındaki sayı, ona bağlı işlev adedidir.
- İşlev tablosu
- Her satır bir işlevdir: # sırası, İşlev listesi, Parametreler. Satırın sonundaki ↑ ↓ sırayı değiştirir, × satırı siler. En alttaki <İşlev ekle> listesi yeni satır ekler. İşlevi değiştirirseniz satırın tag'i ve tuş koşulu korunur.
- Hata olursa sonrakileri çalıştırma
- Son satır dışındaki satırlarda görünen onay kutusu. İşaretliyse bu işlev hata verince listenin kalanı çalışmaz; değilse hata bildirilir ve liste devam eder.
- İpucu şeridi
- Seçili olayın ne zaman çalıştığını yazar.
Nesne olayları
| Olay | Ne zaman çalışır |
|---|---|
| Yüklendiğinde | Nesnenin sayfası (ya da penceresi) açılıp ilk tag değerleri uygulandıktan sonra, nesne başına bir kez. |
| Tıklama | Nesneye tıklanınca (basılıp bırakılınca). Sekme tuşuyla odaklanmış (odak çerçevesi görünen) nesnede Enter / Boşluk da tıklama sayılır; fareyle tıklayarak alınan odak Enter'a tepki vermez. |
| Çift tıklayınca | Nesneye 450 ms içinde, birbirinden 32 pikselden az uzakta iki kez tıklanınca (fare, kalem, dokunma). İlk tıklama ayrıca Tıklama olayını çalıştırır. |
| Basılınca (sol tuş) | Farenin sol tuşu nesnenin üstünde basılınca. |
| Bırakılınca (sol tuş) | Sol tuş nesnenin üstünde bırakılınca (bkz. aşağıdaki sınırlama). |
| Basılınca (sağ tuş), Bırakılınca (sağ tuş) | Sağ tuşla; nesnede tarayıcının kendi menüsü açılmaz. Dokunmatik uzun basış sağ tuş sayılır. |
| İmleç üstüne gelince, İmleç ayrılınca | Fare ya da kalem imleci nesnenin üstüne gelince / ayrılınca. Dokunmada ve düğme basılıyken (sürükleme) çalışmaz. Vurgu ve ipucu için kullanın. |
| Tuşa basılınca, Tuş bırakılınca | Nesne odaktayken (tıklanınca ya da Sekme ile gelinince) klavye tuşuna basılınca / bırakılınca. Tuş sütunu koşuldur (aşağıya bakın). |
| Etkinleşince | Nesne odak alınca (fareyle tıklanınca ya da Sekme ile gelinince). |
| Nesne değişince | Tag bağlamasıyla nesnenin bir özelliği değişince. Sayfa açılırkenki ilk değerlerde çalışmaz; güncelleme turu başına en çok bir kez çalışır. |
3B nesnelerde odak, tuş, çift tıklama ve imleç olayları yoktur; yalnızca Yüklendiğinde, Tıklama, Basılınca, Bırakılınca, Basılınca (sağ tuş), Bırakılınca (sağ tuş) ve Nesne değişince listelenir (3B sayfalar).
Sayfa olayları
12- Sayfa olayları — açılınca, kapanınca, tuşa basılınca, tuş bırakılınca.
- Tag ve değer — sayfa açılırken tag'e değer yazar.
| Olay | Ne zaman çalışır |
|---|---|
| Sayfa açılınca | Sayfa (ya da pencere) her açıldığında bir kez; ana sayfa, açılır pencere, Sayfa Penceresi'ndeki sayfa ve sabit alan sayfası için de. |
| Sayfa kapanınca | Sayfa (ya da pencere) kapanırken. |
| Tuşa basılınca, Tuş bırakılınca | Sayfa açıkken klavye tuşuna basılınca / bırakılınca; odak nerede olursa olsun. Yazı kutusu, ekran klavyesi, giriş / bildirim penceresi ya da sistem menüsü açıkken çalışmaz. Açılır pencereler arasında yalnızca en üstteki pencerenin sayfası tuşu alır; ana sayfa ve sabit alanlar almaya devam eder. Her işlev satırına ayrı Tuş verilerek bir sayfada birden çok kısayol tanımlanır. |
Tuş koşulu
Tuş olaylarında her işlev satırında bir Tuş hücresi bulunur. Boşsa (her tuş) işlev her tuşta çalışır; doluysa yalnızca o tuşta. Hücreye tıklayın ve tuşa (ya da birleşime) basın.
123- Tuşa basılınca — nesne odaktayken.
- Tuş — hücreye tıklayıp tuşa basın; boş = her tuş.
- ArrowUp — yalnız bu tuşta çalışır.
- Esc vazgeçer; Backspace / Delete koşulu siler (her tuş).
- Tuş adları:
Enter,Escape,Space,Tab,Backspace,Delete,F1…F12,A…Z,0…9,ArrowUp… BirleşimlerCtrl+,Alt+,Shift+sırasıyla yazılır:Ctrl+S,Shift+Tab. Harfler büyük yazılır. - Basılı tutulan tuş yeniden olay üretmez. Tuş olayı işlendiyse tarayıcının varsayılan davranışı engellenir.
Olayın çalışma koşulları
Nesne olayı (Yüklendiğinde, Nesne değişince, imleç olayları dışında) operatörün başlattığı bir olaydır ve şu koşulların hepsi sağlanınca çalışır:
- Nesnenin Kumanda edilebilir özelliği açık (Nesne özellikleri › Güvenlik) ve sayfanın Kumanda edilebilir özelliği açık (Sayfa özellikleri).
- Nesne gizli değil; Live'da görünür.
- Nesnenin Gerekli yetki alanı doluysa kullanıcının yetkisi var: yetki yoksa ve oturum kapalıysa Kullanıcı Girişi penceresi, oturum açıksa hata bildirimi çıkar (Yetkilerin kullanımı). Yetki yoksa olay çalışmaz. İmleç olayları için giriş penceresi açılmaz.
Bazı nesnelerin hazır davranışı vardır ve olay listesinden bağımsız çalışır: IO Alanı tıklanınca değer girişi penceresi açar, Sembolik IO seçim penceresi açar, Anahtar ve Onay Kutusu bağlı biti ters çevirir, Sürgü, Artır / Azalt ve Seçici Anahtar değeri tag'e yazar. Olay listeniz varsa hazır davranıştan sonra çalışır (Elemanlar).
İşlevlerin çalışma düzeni
- Sıralı. İşlev satırları yukarıdan aşağıya çalışır. Bir işlev PLC'ye yazıyorsa ya da betik çalıştırıyorsa sonraki satır o bitince başlar ("Değer yaz → Sayfa aç": yazma bitmeden sayfa açılmaz). Dahili ve simülatör tag'lerine yazma anında biter.
- Hata. İşlev hata verirse (bağlantı kopuk, değer sınır dışı, tag yok …) bir hata penceresi çıkar ve liste devam eder; Hata olursa sonrakileri çalıştırma işaretli satırda durur.
- Zaman aşımı. Bir işlev 30 saniyede bitmezse liste devam eder ve olay günlüğüne not düşülür.
- Üst üste olay. Aynı olay yeniden tetiklenirse yeni bir liste ayrıca başlar.
- Yazma kuralları. Tag'e yazılan değer tag'in tipine çevrilir; tag'in alt / üst sınırının dışındaki sayı reddedilir. Bağlantı durum tag'lerine yazılamaz.
Örnekler
- Başlat / Durdur düğmesi
Düğmenin Tıklama olayına Bit'i 1 yap (SetBit) ekleyin, tag olarak
Pompa1_Calisiyorseçin. Durdur düğmesine Bit'i 0 yap. Aynı olaya ikinci işlev olarak Değer yaz ile durum tag'ine değer yazabilirsiniz (şekildeki gibi). - Basılı tutulunca çalışan düğme (jog)
Basılınca (sol tuş) olayına Bit'i 1 yap, Bırakılınca (sol tuş) olayına Bit'i 0 yap ekleyin. Düğme basılı kaldığı sürece bit 1'dir.
- Sayfa değiştiren düğme
Tıklama olayına Sayfa aç ekleyip hedef sayfayı seçin. Sabit alan sayfasına konan böyle düğmeler her sayfada gezinti şeridi sağlar (Sayfa yönetimi).
- Klavye kısayolu
Sayfanın Tuşa basılınca olayına Sayfa aç ekleyip Tuş olarak F5 seçin: sayfa açıkken F5 o sayfayı açar.
- Özelliği olayla değiştirme
Başka bir nesnenin özelliğini tıklamayla değiştirmek için Nesne özelliğini sabit değere ata işlevini kullanın.
12Tıklanınca Ariza_Yazisi nesnesinin yazı rengini mavi yapan işlev. - İşlev — Nesne ve pencere grubundan.
- Nesne, özellik, değer — özelliğin türüne göre alan çıkar.
Kısıtlar ve dikkat edilecekler
- İzleyici (tarayıcıdan salt okunur izleme): yalnızca bakış sayfa değiştiren işlevler çalışır: Sayfa aç, Önceki sayfaya dön, Açılır pencere aç, Açılır pencereyi kapat, 3B bakışa git, Katmanı göster / gizle, Live dilini değiştir, Nesne özelliğini … işlevleri ve Sayfa penceresinde sayfa göster. Diğerleri bir uyarı gösterir ve çalışmaz. TV ekranlarında hiçbir olay çalışmaz.
- Yüklendiğinde, Nesne değişince ve imleç olayları sistemin ya da imlecin olaylarıdır: nesneyi "kumanda edilebilir" yapmaz; nesne yalnızca bu olaylara sahipse el imlecine dönmez ve Sekme ile odak almaz.
- Silinmiş tag, sayfa ya da betiğe başvuran işlev satırları Projeyi denetle'de hata olarak listelenir; Live'da böyle bir işlev hata verir ve atlanır.
- İşlev satırlarının bir kısmı (ör. Nesne özelliğini sabit değere ata) menü ve araç çubuğu öğelerinin olay tablosunda yoktur; bkz. Menüler ve araç çubukları.