Avatar billede soelle Nybegynder
22. maj 2007 - 09:37 Der er 5 kommentarer og
1 løsning

StopDrag med zoom

Jeg har lavet et kort som man kan dragge rundt samt zoome ind og ud på. Det er masket af så man kun kan se et bestemt udsnit af kortet. Nu vil jeg så gerne have lavet så man ikke kan trække kortet længere end selve kortet er.

Er der nogen der har en løsning på det, når det også skal virke selvom man er zoomet ind/ud? - zoomfunktionen er lavet trinløst
Avatar billede andersbro Nybegynder
22. maj 2007 - 10:17 #1
Er det ikke noget med at sætte maskens outline som grænserne for dragfunktionen, dvs. left, top, right, bottom. Eller noget i den stil?
Avatar billede soelle Nybegynder
22. maj 2007 - 15:45 #2
Jeg har forsøgt med dette men det fungerer ikke:

mx=container_mc.maske_mc._x;
my=container_mc.maske_mc._y;
dx=mx+container_mc.maske_mc._width
dy=my+container_mc.maske_mc._height
startDrag(container_mc.content_mc.mapMain_mc,false,mx,my,dx,dy)
Avatar billede andersbro Nybegynder
22. maj 2007 - 20:43 #3
Jeg vil tro at problemet er at x, y osv. skal være fra samme scope. Forstået på den måde, at mapMain ligger et niveau under maske_mc. Prøv at lægge masken på samme niveau, dvs.
container_mc.content_mc.maske_mc

Så skulle din udregning med mx, my, dx og dy gerne fungere.

Elllers kan du konvertere værdierne ved at trække content_mc's x og y værdier fra.
Avatar billede soelle Nybegynder
23. maj 2007 - 09:51 #4
Ja, det virker fint efter jeg flyttede den ind i samme niveau. Så er det bare lige problemet et den kan trækkes til registreringspunktet som ligger i midten af kortet. Hvordan får jeg det lavet så den kan trække til kanterne af billedet i stedet?
Avatar billede soelle Nybegynder
23. maj 2007 - 10:01 #5
Det gjorde jeg sådan her:

mx=container_mc.content_mc.maske_mc._x+container_mc.content_mc.mapMain_mc._width/2;
my=container_mc.content_mc.maske_mc._y+container_mc.content_mc.mapMain_mc._height/2;;
dx=mx+container_mc.content_mc.maske_mc._width-container_mc.content_mc.mapMain_mc._width
dy=my+container_mc.content_mc.maske_mc._height-container_mc.content_mc.mapMain_mc._height
   
startDrag(container_mc.content_mc.mapMain_mc,false,mx,my,dx,dy)   

Tak for sparket andersbro... smider du et svar for point?
Avatar billede andersbro Nybegynder
23. maj 2007 - 11:07 #6
Gerne - og selv tak...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester