Guida di riferimento di ActionScript® 3.0 per la piattaforma Adobe® Flash®
Home  |  Nascondi elenco pacchetti e classi |  Pacchetti  |  Classi  |  Novità  |  Indice  |  Appendici  |  Perché in inglese?
Filtri: AIR 30.0 e versioni precedenti, Flash Player 30.0 e versioni precedenti, Flash Lite 4
Flex 4.6 e versioni precedenti, Flash Pro CS6 e versioni precedenti
Nascondi filtri
flash.desktop 

NativeDragManager  - AS3

Pacchettix

Primo livello
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Elementi del linguaggio

Costanti globali
Funzioni globali
Operatori
Istruzioni, parole chiave e direttive
Tipi speciali

Appendici

Novità
Errori del compilatore
Avvisi del compilatore
Errori runtime
Migrazione a ActionScript 3
Set di caratteri supportati
Tag solo di MXML
Elementi XML di Motion
Tag Timed Text
Elenco degli elementi obsoleti
Costanti di implementazione dell’accessibilità
Utilizzare gli esempi ActionScript
Note legali
Pacchettoflash.desktop
Classepublic class NativeDragManager
EreditarietàNativeDragManager Inheritance Object

Versioni runtime: AIR 1.0

La classe NativeDragManager coordina le operazioni di trascinamento e rilascio. Con l'API di trascinamento e rilascio nativa, potete consentire agli utenti di trasferire dati da un'applicazione AIR al sistema operativo nativo e vice versa, tra due applicazioni o da un componente all'altro di una stessa applicazione.

Potete trasferire i seguenti tipi di dati:

  • Bitmap
  • File
  • Testo
  • Stringhe URL
  • Oggetti serializzati
  • I riferimenti agli oggetti (validi solo all'interno dell'applicazione di origine)

Nota: tutti i membri di NativeDragManager sono statici. Non è necessario creare un'istanza di questa classe.

Un'operazione di trascinamento e rilascio è una manovra eseguibile dall'interfaccia utente in cui l'utente fa clic su un oggetto visibile e lo trascina in un'altra posizione. Durante il trascinamento, gli oggetti interattivi nell'elenco di visualizzazione inviano eventi di trascinamento nativi a mano a mano che la manovra viene eseguita nella finestra dell'applicazione AIR. I gestori di questi eventi possono chiamare i metodi della classe NativeDragManager per indicare se un elemento trascinato può essere rilasciato su un oggetto. In risposta, NativeDragManager modifica il puntatore del mouse per fornire un feedback all'utente.

Supporto profili AIR: questa funzione non è supportata nei dispositivi AIR per TV. Inoltre, non è supportata in tutti i dispositivi mobili. È possibile verificare se la funzionalità è supportata in fase runtime utilizzando la proprietà NativeDragManager.isSupported. Per ulteriori informazioni sul supporto delle API tra più profili, vedete Supporto dei profili AIR.

Azioni di trascinamento

Le manovre di trascinamento e rilascio vengono generalmente utilizzate per eseguire tre diversi tipi di operazioni, chiamate azioni. Poiché il significato di queste azioni dipende dal contesto dell'applicazione, durante l'esecuzione del runtime non viene applicato alcun comportamento specifico in relazione a tali azioni. Tuttavia, un'implementazione accurata di queste azioni migliora l'esperienza dell'utente con l'applicazione.

Le azioni possibili sono:

  • Copy: viene eseguita una copia dei dati lasciando l'originale invariato. Se si trascinano oggetti all'interno di una stessa applicazione, è necessario fare attenzione a copiare l'oggetto originale e non un suo riferimento.
  • Move: i dati vengono spostati dal contesto originale al contesto definito dal target di rilascio, come, ad esempio, quando si sposta un oggetto da un elenco a un altro.
  • Link: viene creato un riferimento o un collegamento rapido ai dati originali, senza spostare l'oggetto dal contesto originale.

Per impostare le azioni consentite per una manovra di trascinamento, indicate un parametro allowedActions nella chiamata NativeDragManager.doDrag() che dà inizio all'operazione di trascinamento. Se non viene fornito alcun parametro allowedActions, tutte le azioni saranno consentite. I potenziali target di trascinamento possono verificare quali azioni sono consentite utilizzando la proprietà allowedActions di un oggetto NativeDragEvent, in modo da non accettare rilasci che permettano solo azioni incompatibili (che non vengono tuttavia applicate all'esecuzione del runtime).

Se un target di rilascio implementa solo una singola azione, l'oggetto può impostare la proprietà dropAction di NativeDragManager nei gestori di entrambi gli eventi nativeDragEnter e nativeDragOver. L'impostazione della proprietà prima del rilascio consente al gestore di trascinamento di aggiornare il puntatore del mouse per indicare l'azione supportata e impedire all'utente di scegliere un'azione non compatibile utilizzando i tasti di modifica. Se l'azione specificata non è una delle azioni consentite, il rilascio non è permesso anche se il target chiama il metodo acceptDrop().

In fase di accettazione di un rilascio, il potenziale target di rilascio deve specificare l'azione scelta impostando la proprietà NativeDragManager.dropAction in risposta all'evento nativeDragDrop. Tale azione viene risegnalata all'oggetto di visualizzazione da cui è partita l'operazione, nell'evento nativeDragComplete. Se un target di rilascio non definisce alcuna azione, viene scelta un'azione predefinita tra le azioni consentite, nel seguente ordine di precedenza: copy, move, link. L'oggetto da cui è partita l'operazione è responsabile dell'aggiornamento del suo stato interno in risposta all'azione selezionata.

Le costanti di stringa relative ai nomi delle azioni sono definite nella classe NativeDragActions.

Sequenza di eventi

Una manovra di trascinamento viene avviata mediante una chiamata al metodo NativeDragManager.doDrag() nell'ambito di un gestore di eventi mouseDown o mouseMove e procede attraverso la sequenza di eventi seguente, in risposta alle azioni dell'utente:

  • Evento nativeDragStart: quando viene chiamato NativeDragManager.doDrag(), l'oggetto interattivo passato al metodo come parametro diventa l'oggetto iniziatore e invia un evento nativeDragStart.
  • Evento nativeDragUpdate: durante il trascinamento, l'oggetto iniziatore continua a inviare eventi nativeDragUpdate.
  • Eventi nativeDragEnter, nativeDragOver: quando una manovra di trascinamento passa sopra un oggetto interattivo, tale oggetto invia un evento nativeDragEnter. Quando la manovra di trascinamento si trova sopra l'oggetto interattivo, esso continua a inviare eventi nativeDragOver. In risposta a uno di questi eventi, un oggetto che funge da potenziale target di rilascio deve verificare le proprietà dell'oggetto evento e decidere se può accettare il rilascio. Se il formato dei dati e le azioni consentite sono appropriati, il gestore di questi eventi deve chiamare NativeDragManager.acceptDrop(), passando un riferimento all'oggetto di visualizzazione che funge da target di trascinamento (in genere, l'oggetto che ha inviato l'eventonativeDragEnter o nativeDragOver). A questo punto, l'utente può rilasciare l'oggetto trascinato sul target.
  • Evento nativeDragExit: quando una manovra di trascinamento passa al di fuori di un oggetto interattivo, l'oggetto invia un evento nativeDragExit. Se l'oggetto è stato designato come target di trascinamento da una precedente chiamata al metodo NativeDragManager.acceptDrop(), tale chiamata non è più considerata valida e acceptDrop() deve essere richiamato se la manovra immette di nuovo l'oggetto interattivo.
  • Evento nativeDragDrop: l'oggetto di visualizzazione target invia un evento nativeDragDrop quando l'utente rilascia il pulsante del mouse sopra l'oggetto. Il gestore di questo evento può accedere ai dati contenuti nella proprietà transferable dell'oggetto evento e deve impostare la proprietà NativeDragManager.dropAction in modo che segnali quale azione deve essere intrapresa dall'oggetto iniziatore.
  • Evento nativeDragComplete: quando l'utente rilascia il pulsante del mouse al termine dell'operazione di trascinamento, l'oggetto iniziatore invia un evento nativeDragComplete (a prescindere dall'esito del rilascio). Il gestore di questo evento può verificare la proprietà dropAction dell'oggetto evento per determinare quali modifiche, se necessarie, devono essere apportate allo stato interno dei suoi dati, ad esempio, rimuovere da un elenco un oggetto che è stato spostato. Se dropAction è NativeDragActions.NONE, significa che l'oggetto trascinato non è stato rilasciato su un target idoneo.

Operazioni tra applicazioni

Se durante una manovra di trascinamento accedete alla finestra di un'applicazione AIR da un'applicazione non AIR, non vi sarà alcun oggetto iniziatore che invia l'evento nativeDragStart o l'evento nativeDragComplete. Gli eventi inviati durante la manovra seguiranno per il resto lo stesso schema di quelli di una manovra avviata e terminata all'interno della stessa applicazione AIR.

Quando una manovra di trascinamento esce dalla finestra di un'applicazione AIR, nessun oggetto target invia gli eventi nativeDragEnter, nativeDragOver o nativeDragDrop. L'oggetto iniziatore invia comunque un evento nativeDragComplete, che segnala l'azione di trascinamento impostata dal sistema operativo nativo (oppure none, se il rilascio non viene accettato).

Quando una manovra di trascinamento passa da un'applicazione AIR a un'altra, gli oggetti di visualizzazione iniziatore e target inviano eventi all'interno delle relative applicazioni come di consueto.

Trasferimento di informazioni

I dati trasferiti durante un'operazione di trascinamento e rilascio sono contenuti in un oggetto Clipboard. Tale oggetto di dati viene inserito nell'operazione di trascinamento con il metodo NativeDragManager.doDrag(), che dà inizio alla manovra di trascinamento. I potenziali target di rilascio possono accedere all'oggetto Clipboard dalla proprietà clipboard dell'oggetto evento di trascinamento nativo. Dopo l'avvio di un'operazione di trascinamento, l'accesso all'oggetto Clipboard può avvenire unicamente nel gestore di un evento NativeDragEvent. Qualsiasi altro tentativo di accedere a tale oggetto genera un errore di runtime.

Considerazioni relative alla sicurezza

Le sandbox di sicurezza degli oggetti iniziatore e potenziale target determinano la modalità di accesso ai dati che vengono trascinati. Se entrambi gli oggetti si trovano nella stessa sandbox, i dati sono accessibili da un qualsiasi oggetto NativeDragEvent. Tuttavia, se gli oggetti iniziatore e target si trovano in sandbox differenti, i dati saranno accessibili unicamente nella sandbox target, all'interno del gestore di eventi dell'evento nativeDragDrop. Gli altri gestori di eventi di trascinamento nativi possono comunque accedere all'oggetto Clipboard al quale si fa riferimento nella proprietà clipboard dell'evento per determinare quali formati di dati sono disponibili; tuttavia, una chiamata al metodo clipboard.getData() genera un errore di sicurezza.

Altri esempi

Elementi API correlati



Proprietà pubbliche
 ProprietàDefinito da
 Inheritedconstructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
Object
      dragInitiator : InteractiveObject
[statico] [sola lettura] L'oggetto interattivo passato alla chiamata NativeDragManager.doDrag() che ha avviato l'operazione di trascinamento.
NativeDragManager
      dropAction : String
[statico] L'azione di trascinamento specificata dal target di rilascio.
NativeDragManager
      isDragging : Boolean
[statico] [sola lettura] Segnala se un'operazione di trascinamento è in corso.
NativeDragManager
      isSupported : Boolean
[statico] [sola lettura] La proprietà isSupported è impostata su true se la classe NativeDragManager è supportata nella piattaforma corrente, altrimenti è impostata su false.
NativeDragManager
Metodi pubblici
 MetodoDefinito da
  
[statico] Informa l'oggetto NativeDragManager che l'oggetto interattivo target specificato può accettare un rilascio corrispondente all'evento di trascinamento corrente.
NativeDragManager
  
    doDrag(dragInitiator:InteractiveObject, clipboard:Clipboard, dragImage:BitmapData = null, offset:Point = null, allowedActions:NativeDragOptions = null):void
[statico] Avvia un'operazione di trascinamento e rilascio.
NativeDragManager
 Inherited
Indica se per un oggetto è definita una proprietà specifica.
Object
 Inherited
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
Object
 Inherited
Indica se la proprietà specificata esiste ed è enumerabile.
Object
 Inherited
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
Object
 Inherited
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate.
Object
 Inherited
Restituisce la rappresentazione in formato stringa dell'oggetto specificato.
Object
 Inherited
Restituisce il valore di base dell'oggetto specificato.
Object
Descrizione delle proprietà
    

dragInitiator

proprietà
dragInitiator:InteractiveObject  [sola lettura]

Versioni runtime: AIR 1.0

L'oggetto interattivo passato alla chiamata NativeDragManager.doDrag() che ha avviato l'operazione di trascinamento.



Implementazione
    public static function get dragInitiator():InteractiveObject
    

dropAction

proprietà 
dropAction:String

Versioni runtime: AIR 1.0

L'azione di trascinamento specificata dal target di rilascio.

La proprietà dropAction deve essere impostata nel gestore dell'evento nativeDragDrop. Se dropAction non viene impostato prima di nativeDragComplete, NativeDragManager imposta la prima azione consentita dell'elenco: copy, move o link (in questo ordine).



Implementazione
    public static function get dropAction():String
    public static function set dropAction(value:String):void

Elementi API correlati

    

isDragging

proprietà 
isDragging:Boolean  [sola lettura]

Versioni runtime: AIR 1.0

Segnala se un'operazione di trascinamento è in corso.



Implementazione
    public static function get isDragging():Boolean
    

isSupported

proprietà 
isSupported:Boolean  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 2

La proprietà isSupported è impostata su true se la classe NativeDragManager è supportata nella piattaforma corrente, altrimenti è impostata su false.



Implementazione
    public static function get isSupported():Boolean
Descrizione dei metodi

    acceptDragDrop

()metodo
public static function acceptDragDrop(target:InteractiveObject):void

Versioni runtime: AIR 1.0

Informa l'oggetto NativeDragManager che l'oggetto interattivo target specificato può accettare un rilascio corrispondente all'evento di trascinamento corrente.

Questo metodo deve essere chiamato unicamente se sull'oggetto target specificato è presente un gestore nativeDragDrop in grado di gestire almeno uno dei formati di dati presenti nell'oggetto trascinato e almeno una delle azioni consentite.

Questa funzione può essere chiamata esclusivamente all'interno di un gestore di eventi nativeDragEnter o nativeDragOver.

Parametri

target:InteractiveObject

    doDrag

()metodo 
public static function doDrag(dragInitiator:InteractiveObject, clipboard:Clipboard, dragImage:BitmapData = null, offset:Point = null, allowedActions:NativeDragOptions = null):void

Versioni runtime: AIR 1.0

Avvia un'operazione di trascinamento e rilascio.

Per avviare un'operazione di trascinamento:

  1. Create un nuovo oggetto Clipboard.
  2. Inserite i dati da trasferire in uno o più formati.
  3. Facoltativamente, create un oggetto BitmapData che funga da immagine proxy durante il trascinamento.
  4. Facoltativamente, create un oggetto NativeDragOptions per limitare le azioni consentite per l'operazione. (Se il parametro allowedActions non viene specificato, ovvero è null, tutte le azioni sono consentite.)
  5. Chiamate NativeDragManager.doDrag().

L'oggetto iniziatore invia un evento nativeDragStart dopo la chiamata a questo metodo, una serie di eventi nativeDragStart durante la manovra di trascinamento e un evento nativeDragComplete quando l'utente rilascia il pulsante mouse per terminare l'operazione. Il gestore dell'evento nativeDragComplete può verificare la proprietà dropAction dell'evento per determinare se l'operazione di trascinamento e rilascio è stata portata a termine correttamente. Se dropAction è NativeDragActions.NONE, significa che l'oggetto trascinato non è stato rilasciato su un target idoneo.

Questo metodo può essere chiamato esclusivamente da un gestore di eventi mouseDown o mouseMove. Se chiamato in risposta a un evento mouseMove, il pulsante del mouse deve essere premuto.

Parametri

dragInitiator:InteractiveObject — In genere, l'oggetto da cui ha avuto inizio l'operazione di trascinamento. Riceve gli eventi nativeDragStart e nativeDragComplete.
 
clipboard:Clipboard — L'oggetto contenitore dei dati trascinati.
 
dragImage:BitmapData (default = null) — Un'immagine proxy opzionale visualizzata sotto il puntatore del mouse durante la manovra di trascinamento. Se il valore è null, non viene visualizzata alcuna immagine
 
offset:Point (default = null) — Valore di offset tra il punto attivo del mouse e l'angolo superiore sinistro dell'immagine trascinata. Coordinate negative consentono di spostare l'immagine verso l'alto e verso sinistra rispetto al punto attivo. Se il valore è null, l'angolo superiore sinistro dell'immagine trascinata viene posizionato in corrispondenza del punto attivo del mouse.
 
allowedActions:NativeDragOptions (default = null) — Limita le azioni di trascinamento e rilascio consentite per questa operazione. Se il valore è null, sono consentite tutte le azioni.

Elementi API correlati





[ X ]Perché in inglese?
Il contenuto della Guida di riferimento di ActionScript 3.0 appare in inglese

Non tutte le parti della Guida di riferimento di ActionScript 3.0 sono tradotte in tutte le lingue. Quando un elemento del linguaggio non è tradotto, viene riportato in inglese. Ad esempio, la classe ga.controls.HelpBox non è tradotta in nessuna lingua. Pertanto, nella versione italiana della guida di riferimento, la descrizione della classe ga.controls.HelpBox è riportata in inglese.