Bir AIR uygulamasında sürükle ve bırakı kullanmakla ilgili hızlı bir açıklama ve kod örnekleri için Adobe Geliştirici Bağlantısında bulunan aşağıdaki hızlı başlangıç makalelerini inceleyin:
Sürükle ve bırak API'si aşağıdaki sınıfları içerir.
Paket
|
Sınıflar
|
flash.desktop
|
Sürükle ve bırak API'siyle kullanılan sabitlerin tanımlandığı sabitler:
|
flash.events
|
NativeDragEvent
|
Sürükle ve bırak hareket sahneleri
Sürükle ve bırak hareketinin üç sahnesi vardır:
-
Başlatma
-
Kullanıcı, fare düğmesini basılı tutarak bir bileşeni veya bileşendeki öğeyi sürükleyerek sürükle ve bırak işlemini başlatır.
Sürüklenen öğenin kaynağı olan bileşen genellikle sürükleme başlatıcısı olarak belirlenir ve
nativeDragStart
ve
nativeDragComplete
olaylarını gönderir. Adobe® AIR uygulaması,
mouseDown
veya
mouseMove
olayına yanıt olarak
NativeDragManager.doDrag()
yöntemini çağırarak bir sürükleme işlemi başlatır.
Sürükleme işlemi AIR uygulamasının dışından başlatıldıysa
nativeDragStart
veya
nativeDragComplete
olaylarını gönderecek başlatıcı nesne bulunmaz.
-
Sürükleme
-
Fare düğmesini basılı tutarken kullanıcı fare imlecini başka bir bileşene, uygulamaya veya masaüstüne taşır.
Sürükleme işlemi devam ederken, başlatıcı nesne
nativeDragUpdate
olaylarını gönderir. (Ancak bu olay Linux için AIR'de gönderilmez) Kullanıcı fareyi AIR uygulamasındaki olası bir bırakma hedefinin üzerine taşıdığında, bırakma hedefi bir
nativeDragEnter
olayı gönderir. Olay işleyicisi, sürüklenen verilerin hedef tarafından kabul edilecek bir biçimde mevcut olup olmadığını belirlemek için olay nesnesini denetleyebilir, mevcutsa
NativeDragManager.acceptDragDrop()
yöntemini çağırarak kullanıcının verileri bırakmasını sağlar.
Sürükleme hareketi etkileşimli bir nesnenin üzerinde kaldığı sürece, bu nesne
nativeDragOver
olaylarını gönderir. Sürükleme hareketi etkileşimli nesneyi bıraktığında, bir
nativeDragExit
olayı gönderir.
-
Düşür
-
Kullanıcı fare düğmesini uygun bir bırakma hedefinin üzerinde serbest bırakır.
Hedef bir AIR uygulaması veya bileşeni olduğunda, hedef nesne bir
nativeDragDrop
olayı gönderir. Olay işleyicisi olay nesnesinden aktarılan verilere erişebilir. Hedef, AIR'in dışındaysa, bırakma işlemini işletim sistemi veya başka bir uygulama yapar. Her iki durumda da, başlatan nesne bir
nativeDragComplete
olayı gönderir (sürükleme AIR'in içinden başlatıldıysa).
NativeDragManager sınıfı hem içeri hem de dışarı sürükleme hareketlerini kontrol eder. NativeDragManager sınıfının tüm üyeleri statiktir, bu sınıfın bir örneğini oluşturmayın.
Clipboard nesnesi
Bir uygulamanın veya bileşenin içine ya da dışına sürüklenen veriler bir Clipboard nesnesinde bulunmaktadır. Tek bir Clipboard nesnesi, başka bir uygulamanın verileri anlayıp kullanabilmesi olasılığını arttırmak için aynı bilgilerin farklı temsillerini kullanılabilir hale getirebilir. Örneğin bir görüntü, görüntü verisi, serileştirilmiş Bitmap nesnesi veya bir dosya olarak dahil edilebilir. Bir biçimde veri oluşturma işlemi, veriler okunana kadar çağrılmayan bir oluşturma işlevine ertelenebilir.
Bir sürükleme hareketi başladıktan sonra Clipboard nesnesine yalnızca
nativeDragEnter
,
nativeDragOver
ve
nativeDragDrop
olayları için olay işleyicisinin içinden erişilebilir. Sürükleme hareketi bittikten sonra Clipboard nesnesi okunamaz veya yeniden kullanılamaz.
Bir uygulama nesnesi başvuru olarak ve serileştirilmiş bir nesne olarak aktarılabilir. Başvurular yalnızca kaynak uygulama içinde geçerlidir. Serileştirilmiş nesne aktarımları AIR uygulamaları arasında geçerlidir, ancak yalnızca serileştirildiğinde ve serileştirmesi kaldırıldığında geçerliliği devam eden nesnelerle kullanılabilir. Serileştirilen nesneler dize tabanlı veri aktarım biçimi olan ActionScript 3 (AMF3) için Action Message Format'a dönüştürülür.
Flex çerçevesiyle çalışma
Çoğu durumda, Flex uygulamaları oluştururken Adobe® Flex™ sürükle ve bırak API'sini kullanmak daha yararlıdır. AIR'de bir Flex uygulaması çalıştırıldığında (AIR NativeDragManager öğesini dahili şekilde kullanır), Flex çerçevesi eşdeğer bir özellik kümesi sağlar. Flex ayrıca, bir uygulama veya bileşen daha kısıtlayıcı bir tarayıcı ortamında çalışırken, daha sınırlı bir özellik setini korur. AIR sınıfları, AIR çalışma zamanı ortamının dışında çalışan bileşenlerde veya uygulamalarda kullanılamaz.
|
|
|