Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 25-07-2003, 18:35   #1 (permalink)
Neuer User
 
Registriert seit: Jul 2003
Ort: Hilden
Beiträge: 8
Position + Groesse von verschachtelten MCs nach attachMovie

Hallo,

ich habe das Problem dass wenn ich MCs verschachtelt attache
und danach die grösse und position per AS einstelle
diese nicht die Eigenschaften haben wie sie sie haben sollten.
Entweder sind sie auf einmal zu klein oder zu gross oder an der falschen position.

Ich habe schon eine Menge ausprobiert
z.B. erst alle attachen und dann die Eigenschaften vergeben.
Oder esrt die position und dann die Grösse und umgekehrt.

Es kommt aber nie das dabei raus wie ich es mir vorstelle.

Ich attache die MCs und stelle deren Eigenschaften im ersten Frame der Hauptzeitleiste ein. danach kommt ein frame mit stop();

Gibt es eine Regel oder Vorgehensweise in welcher Reihenfolge man MCs attachen und deren Eigenschaften einstellen sollte?

Oder muss ich das ganze mit globalToLocal / localToGlobal machen?

Ich dreh hier noch durch. Hab mir AS etwas einfacher vorgestellt

MfG

Darius
__________________
.::D@R1U5Zzz...
dariuszzz ist offline   Mit Zitat antworten
Alt 25-07-2003, 20:26   #2 (permalink)
anyway
Gast
 
Beiträge: n/a
Der attachte MC unterliegt immer den Eigenschaften des ihm übergeordneten MC. Ferner gilt immer der Koordinatenursprung des übergeordneten MCs als Nullpunkt für alle MCs die er enthält.

Zitat:
Oder muss ich das ganze mit globalToLocal / localToGlobal machen?
Jepp, so siehts aus.

Oder Du startest die attachMovie-Anweisung von dem Pfad des MCs aus, in dem der jeweilige Clip attached werden soll.

anyway.
  Mit Zitat antworten
Alt 25-07-2003, 20:47   #3 (permalink)
anyway
Gast
 
Beiträge: n/a
Hier ist nochwas, was Dir vielleicht von Nutzen sein könnte:


ActionScript:
  1. MovieClip.prototype.localise = function(x, y) {
  2.     var c = {x:x, y:y};
  3.     this._parent.globalToLocal(c);
  4.     return c;
  5. };
  6. MovieClip.prototype.globalise = function(x, y) {
  7.     var c = {x:x, y:y};
  8.     this._parent.localToGlobal(c);
  9.     return c;
  10. };
  11. // ANWENDUNG:
  12. obj = mc1.localise(Stage.width/2, Stage.height/2);
  13. mc1.mc2._x = obj.x;
  14. mc1.mc2._y = obj.y;

mc2 wurde nun zum Mittelpunkt der Bühne geschickt und das geschieht unabhängig von der Position von mc1.

anyway.
  Mit Zitat antworten
Alt 25-07-2003, 21:07   #4 (permalink)
Neuer User
 
Registriert seit: Jul 2003
Ort: Hilden
Beiträge: 8
Hallo anyway
erstmal danke für deine hilfe.


Ich habe das ganze so versucht :



ActionScript:
  1. /* Einstellungen */
  2. bild_hoehe = 200;
  3. bild_breite = 200;
  4.  
  5. container_x=100;
  6. container_y=100;
  7. container_breite=bild_breite*2;
  8. container_hoehe=bild_hoehe*2;
  9.  
  10. verdeck_hoehe=bild_hoehe/2;
  11. verdeck_breite=bild_breite/2;
  12. // Einstellungen Ende
  13.  
  14. _root.attachMovie("container", "container1", 1);
  15.  
  16. with(_root.container1)
  17. {
  18. _x = container_x;
  19. _y = container_y;
  20. _width = container_breite;
  21. _height = container_hoehe;
  22. _xscale=100;
  23. _yscale=100;
  24. }
  25.  
  26. _root.container1.attachMovie("bild", "bild1", 2);
  27.  
  28. with(_root.container1.bild1)
  29. {
  30. _width = bild_breite;
  31. _height = bild_hoehe;
  32. _x = bild_breite/2;
  33. _y = bild_hoehe/2;
  34. _xscale=100;
  35. _yscale=100;
  36. }
  37.  
  38. _root.container1.bild1.attachMovie("verdeck", "verdeck10", 3);
  39.  
  40. with(_root.container1.bild1.verdeck10)
  41. {
  42. _width=verdeck_breite;
  43. _height=verdeck_hoehe;
  44. _x=0;
  45. _y=0;
  46. _xscale=100;
  47. _yscale=100;
  48. }
  49.  
  50.  
  51. trace("container : " + _root.container1._width + "*" + _root.container1._height + "x" + _root.container1._x + "y" + _root.container1._y);
  52. trace("verdeck10 : " + _root.container1.bild1.verdeck10._width + "*" + _root.container1.bild1.verdeck10._height  + "x" + _root.container1.bild1.verdeck10._x  + "y" + _root.container1.bild1.verdeck10._y);
  53. trace("bild :" + _root.container1.bild1._width + "*" + _root.container1.bild1._height + "x" + _root.container1.bild1._x + "*y" + _root.container1.bild1._y);

Wenn ich die x und y scales weglasse wird garnichts angezeigt

sonst sieht das ganze ganz gut aus nur dass das trace andere Werte ausgibt als erwartet...


Und dann noch so :

ActionScript:
  1. /* Einstellungen */
  2. bild_hoehe = 200;
  3. bild_breite = 200;
  4.  
  5. container_x=100;
  6. container_y=100;
  7. container_breite=bild_breite*2;
  8. container_hoehe=bild_hoehe*2;
  9.  
  10. verdeck_hoehe=bild_hoehe/2;
  11. verdeck_breite=bild_breite/2;
  12.  
  13. // Einstellungen Ende
  14.  
  15. _root.attachMovie("container", "container1", 1); // Container attachen
  16.  
  17. _root.container1.attachMovie("bild", "bild1", 2); // Bild attachen
  18.  
  19.  
  20. _root.container1.bild1.attachMovie("verdeck", "verdeck10", 3);
  21.  
  22. with(_root.container1.bild1.verdeck10)
  23. {
  24. _width=verdeck_breite;
  25. _height=verdeck_hoehe;
  26. _x=0;
  27. _y=0;
  28. }
  29.  
  30.  
  31.  
  32. trace(_root.container1.bild1.verdeck10._width);
  33.  
  34. with(_root.container1.bild1)
  35. {
  36. _width = bild_breite;
  37. _height = bild_hoehe;
  38. _x = bild_breite/2;
  39. _y = bild_hoehe/2;
  40. }
  41. trace(_root.container1.bild1._width + " " + _root.container1.bild1._height);
  42.  
  43.  
  44. with(_root.container1)
  45. {
  46. _x = container_x;
  47. _y = container_y;
  48. _width = container_breite;
  49. _height = container_hoehe;
  50. }
  51.  
  52.  
  53. trace("container : " + _root.container1._width + "*" + _root.container1._height + "x" + _root.container1._x + "y" + _root.container1._y);
  54. trace("verdeck10 : " + _root.container1.bild1.verdeck10._width + "*" + _root.container1.bild1.verdeck10._height  + "x" + _root.container1.bild1.verdeck10._x  + "y" + _root.container1.bild1.verdeck10._y);
  55. trace("bild :" + _root.container1.bild1._width + "*" + _root.container1.bild1._height + "x" + _root.container1.bild1._x + "*y" + _root.container1.bild1._y);

Die durch das Trace ausgegebenen Werte sind fast ganz korrekt nur ist die Darstellung wenn man den Film anguckt falsch.

MfG

Darius
__________________
.::D@R1U5Zzz...

Geändert von dariuszzz (26-07-2003 um 08:23 Uhr)
dariuszzz ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 02:14 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele