Funkcionalita Drag&Drop umožňuje presúvanie obsahu pomocou myši medzi rôznymi grafickými objektmi. Z používateľského hľadiska stačí v zdrojovom grafickom objekte označiť nejaký prvok stlačením ľavého tlačidla myši a ťahaním ho presunúť do iného (prípadne aj toho istého) grafického objektu, vďaka čomu sa môže označený obsah presunúť do cieľového grafického objektu.

Základy Drag&drop


Funkcionalita Drag&Drop sa skladá z dvoch na seba nadväzujúcich operácií:

V rámci funkcionality Drag&Drop môžu jednotlivé grafické objekty zastávať dve role:

To, ktoré z týchto dvoch rolí grafické objekty podporujú alebo nepodporujú, závisí od implementácie ich autora. Grafický objekt nemusí podporovať žiadnu z týchto rolí, môže podporovať iba jednu z nich, alebo môže podporovať obe tak, že umožňuje poskytovanie aj prijímanie dát súčasne. Ak objekt zastáva rolu zdrojového aj cieľového objektu, je možné dynamicky meniť jeho vlastný obsah pomocou myši.

Medzi grafickými objektmi je možné prenášať rôzne formáty dát, ako je napríklad text, obrázok, ikona, zoznam súborov atď. Formát dát, ktoré sú prenášané, určuje zdrojový grafický objekt, pričom si treba uvedomiť, že tento ich môže poskytovať aj vo viacerých formátoch. V prípade, že sa tieto dáta prenášajú "ponad" niektorý cieľový objekt, ten musí rozhodnúť, či niektorý z poskytovaných formátov dát dokáže prijať alebo nie, čo sa zobrazí na ukazovateli myši. Napríklad niektoré objekty dokážu prijať dáta iba vo forme textu, iné zas iba obrázky.

V rámci operácie Drop je možné vykonať nasledujúce typy prenosu dát:

Typ prenosu dát riadi užívateľ stláčaním príslušných kláves počas operácie Drag.

Drag&drop v D2000 Systéme


V Systéme D2000 sú grafické objekty umiestnené na schémach. Funkcionalitu Drag&Drop je možné využiť nielen v rámci procesov D2000 Systému, ale aj v rámci ostatných programov operačného systému, ktoré ju podporujú. Takto je možné získať z iných programov rôzne texty alebo zoznamy súborov a poskytnúť ich objektom v Systéme D2000 a naopak.

V grafických schémach D2000 Systému Drag&Drop podporujú:

Funkcionalita Drag&Drop na podporovaných grafických objektoch nie je implicitne zapnutá. Na to, aby tieto typy grafických objektov v schéme mohli slúžiť ako zdrojový, prípadne cieľový objekt pre Drag&Drop, musia mať v skripte schémy napísanú obsluhu Drag&Drop udalostí.

Všetky súvisiace udalosti (entry) je možné v schéme použiť v dvoch variantoch - podľa toho, či bude udalosť generovaná globálne pre všetky grafické objekty schémy podporujúce Drag&Drop, alebo pre jednotlivé objekty schémy samostatne. Pri globálnom variante je v zozname parametrov udalosti pridaný ako prvý parameter identifikátor grafického objektu, ktorého sa daná udalosť týka.

Na tomto obrázku je graficky znázornené volanie udalostí pri Drag&Drop.

Súvisiace udalosti

Súvisiace udalosti:

Súvisiace funkcie:

  • Funkcie podporujúce Drag&Drop
  •