Domanda

Voglio creare una superficie di disegno invisibile che si trova sopra un'immagine. Questa superficie di disegno avrebbe il compito di prendere l'input del mouse e passare le coordinate lungo uno sprite che si trova sul livello tra la superficie del disegno e l'immagine. La superficie del disegno è uno Sprite vuoto.

Secondo the docs , un oggetto di visualizzazione che non contiene nulla al suo interno non può avere la larghezza o l'altezza impostate. Cioè, sarà sempre zero.

C'è un modo per aggirare questo? Qual è la migliore pratica?

È stato utile?

Soluzione

Puoi lavorare con l'API di disegno per disegnare forme con valori alfa estremamente bassi, questo ti darà i valori senza essere visibile agli occhi.

MA

Forse una soluzione migliore sarebbe quella di registrare i tuoi ascoltatori del mouse sul palco dall'interno dello sprite della superficie del disegno e fargli gestire gli eventi del mouse da solo. Non so abbastanza di cosa stai cercando di fare, ma se possibile, sarebbe una soluzione più pulita / semplice.

Anche se non riesci a mettere gli ascoltatori nello sprite della superficie del disegno, dovresti essere in grado di aggiungerli al palcoscenico da dove lavori, invece di usare un oggetto in più.

Altri suggerimenti

Se hai solo bisogno dei limiti per il tuo disegno, penso che la soluzione più semplice sarebbe quella di ascoltare gli eventi del mouse da palco, e limitare programmaticamente il tuo disegno ... Se pensi ancora di aver bisogno di quello sprite trasparente, puoi disegnare un rettangolo trasparente (beginFill (0, 0)) o creare una bitmap trasparente (nuovo BitmapData (larghezza, altezza, vero, 0)). Non sono sicuro di quale sarebbe la "migliore pratica" ....

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top