Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-07-2005, 13:22   #1 (permalink)
... loves Japan!
 
Benutzerbild von compuboy1010
 
Registriert seit: Apr 2005
Ort: D'dorf; DE
Beiträge: 715
movies schließen nicht.

Warum lassen sich die Mistviecher von movies nicht schließen?

ActionScript:
  1. function displayEventDetails(aEvents:Array, eventID:Number, yPosition:Number):Void {
  2.     this.attachMovie("details", "mcDetails"+eventID, this.getNextHighestDepth());
  3.     this["mcDetails"+eventID]._x = 100;
  4.     this["mcDetails"+eventID]._y = yPosition;
  5.     var sDetails:String = "";
  6.     this["mcDetails"+eventID].tTitle.text = aEvents[eventID]["eventtitle"];
  7.     sDetails += "<b>Datum:</b> " + aEvents[eventID]["startdate"]+ " - " + aEvents[eventID]["enddate"] + "<br>";
  8.     sDetails += "<b>Ort:</b> " + aEvents[eventID]["city"] + "<br>";
  9.     sDetails += "<b>Referent:</b> " + aEvents[eventID]["referent"] + "<br>";
  10.     sDetails += "<b>Contact:</b> " + aEvents[eventID]["contact"] + "<br>";
  11.     sDetails += "<b>Email:</b> " + aEvents[eventID]["email"] + "<br>";
  12.     sDetails += "<b>Tel:</b> " + aEvents[eventID]["tel"] + "<br>";
  13.     this["mcDetails"+eventID].tDetails.htmlText = sDetails;
  14.     this["mcDetails"+eventID].mcClose.onRelease = function() {
  15.         this.removeMovieClip();
  16.     }
compuboy1010 ist offline   Mit Zitat antworten
Alt 22-07-2005, 13:28   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
ActionScript:
  1. this._parent._parent.removeMovieClip();

Vielleicht so?
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 22-07-2005, 13:28   #3 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
So wie das geschrieben wurde entfernt der nur den closeMC, weil sich das this ja auf diesen bezieht und nicht auf den in dem der closeMC liegt.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 22-07-2005, 13:38   #4 (permalink)
... loves Japan!
 
Benutzerbild von compuboy1010
 
Registriert seit: Apr 2005
Ort: D'dorf; DE
Beiträge: 715
Zitat:
Zitat von Der Frager
ActionScript:
  1. this._parent._parent.removeMovieClip();

Vielleicht so?
Danke für die ANtwort. Nein, aber so klappt es:

ActionScript:
  1. function displayEventDetails(aEvents:Array, eventID:Number, yPosition:Number):Void {
  2.     this.attachMovie("details", "mcDetails"+eventID, this.getNextHighestDepth());
  3.     this["mcDetails"+eventID]._x = 100;
  4.     this["mcDetails"+eventID]._y = yPosition;
  5.     var sDetails:String = "";
  6.     this["mcDetails"+eventID].tTitle.text = aEvents[eventID]["eventtitle"];
  7.     sDetails += "<b>Datum:</b> " + aEvents[eventID]["startdate"]+ " - " + aEvents[eventID]["enddate"] + "<br>";
  8.     sDetails += "<b>Ort:</b> " + aEvents[eventID]["city"] + "<br>";
  9.     sDetails += "<b>Referent:</b> " + aEvents[eventID]["referent"] + "<br>";
  10.     sDetails += "<b>Contact:</b> " + aEvents[eventID]["contact"] + "<br>";
  11.     sDetails += "<b>Email:</b> " + aEvents[eventID]["email"] + "<br>";
  12.     sDetails += "<b>Tel:</b> " + aEvents[eventID]["tel"] + "<br>";
  13.     this["mcDetails"+eventID].tDetails.htmlText = sDetails;
  14.     //this["mcDetails"]+eventID.startDrag(false);
  15.     this["mcDetails"+eventID].mcClose.onRelease = function() {
  16.         this._parent.removeMovieClip();
  17.     }
  18. }

Geändert von compuboy1010 (22-07-2005 um 13:41 Uhr)
compuboy1010 ist offline   Mit Zitat antworten
Alt 22-07-2005, 13:40   #5 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
PHP-Code:
 this"mcDetails" eventID ].startDrag(false); 
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 22-07-2005, 13:42   #6 (permalink)
... loves Japan!
 
Benutzerbild von compuboy1010
 
Registriert seit: Apr 2005
Ort: D'dorf; DE
Beiträge: 715
Danke hatte es gerade gesehen und wollte die frage schon wieder löschen.
Aber du warst schneller. 1000x Danke.

compuboy1010 ist offline   Mit Zitat antworten
Alt 22-07-2005, 13:49   #7 (permalink)
... loves Japan!
 
Benutzerbild von compuboy1010
 
Registriert seit: Apr 2005
Ort: D'dorf; DE
Beiträge: 715
Das Ding bewegt sich aber keinen Millimeter:

ActionScript:
  1. function displayEventDetails(aEvents:Array, eventID:Number, yPosition:Number):Void {
  2.     this.attachMovie("details", "mcDetails"+eventID, this.getNextHighestDepth());
  3.     this["mcDetails"+eventID]._x = 100;
  4.     this["mcDetails"+eventID]._y = yPosition;
  5.     var sDetails:String = "";
  6.     this["mcDetails"+eventID].tTitle.text = aEvents[eventID]["eventtitle"];
  7.     sDetails += "<b>Datum:</b> " + aEvents[eventID]["startdate"]+ " - " + aEvents[eventID]["enddate"] + "<br>";
  8.     sDetails += "<b>Ort:</b> " + aEvents[eventID]["city"] + "<br>";
  9.     sDetails += "<b>Referent:</b> " + aEvents[eventID]["referent"] + "<br>";
  10.     sDetails += "<b>Contact:</b> " + aEvents[eventID]["contact"] + "<br>";
  11.     sDetails += "<b>Email:</b> " + aEvents[eventID]["email"] + "<br>";
  12.     sDetails += "<b>Tel:</b> " + aEvents[eventID]["tel"] + "<br>";
  13.     this["mcDetails"+eventID].tDetails.htmlText = sDetails;
  14.     this["mcDetails"+eventID].mcClose.onRelease = function() {
  15.         this._parent.removeMovieClip();
  16.     }
  17.     this["mcDetails"+eventID].onPress = function() {
  18.         this["mcDetails"+eventID].startDrag();
  19.     }
  20.     this["mcDetails"+eventID].onRelease = function() {
  21.         this["mcDetails"+eventID].stopDrag();
  22.     }
  23. }
compuboy1010 ist offline   Mit Zitat antworten
Alt 22-07-2005, 13:54   #8 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
PHP-Code:
this["mcDetails"+eventID].onPress = function() {
    
this.startDrag();
};
this["mcDetails"+eventID].onRelease = function() {
    
this.stopDrag();
}; 
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 22-07-2005, 14:02   #9 (permalink)
... loves Japan!
 
Benutzerbild von compuboy1010
 
Registriert seit: Apr 2005
Ort: D'dorf; DE
Beiträge: 715
Ja so geht es. Aber: jetzt habe ich mehrere Clips dich ich hin und her ziehen kann, dafür lassen sich nicht nicht mehr schließen.

Herrlich ...
compuboy1010 ist offline   Mit Zitat antworten
Alt 22-07-2005, 14:07   #10 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Ist ja auch klar, weil der closeMc gar nicht mehr angesprochen wird, weil der mc darüber ( in dem sich der closeMC befindet ) die ganzen Events abfängt.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 22-07-2005, 14:07   #11 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Wenn ich mal wüßte, wo diese eventID herkommt?
ActionScript:
  1. this.onMouseDown = function() {
  2.     if (this["mcDetails"+eventID].mcClose.hitTest(_root._xmouse, _root._ymouse)) {
  3.         this["mcDetails"+eventID].removeMovieClip();
  4.     }
  5. };
Das könnte jetzt gehen...
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 22-07-2005, 14:10   #12 (permalink)
... loves Japan!
 
Benutzerbild von compuboy1010
 
Registriert seit: Apr 2005
Ort: D'dorf; DE
Beiträge: 715
Die eventID kommt von einer anderen Funktion:

ActionScript:
  1. function displayEventlist(aEvents:Array):Void {
  2.     var yPosition:Number;
  3.     for (var i = 0; i< aEvents.length; i++) {
  4.         mcEvents.attachMovie("event", "mcEvent"+i, mcEvents.getNextHighestDepth());
  5.         mcEvents["mcEvent"+i]._x = 10;
  6.         yPosition = (mcEvents["mcEvent"+i]._height*i)+30;
  7.         mcEvents["mcEvent"+i]._y += yPosition;
  8.         mcEvents["mcEvent"+i].mcTitle.tTitle.text = aEvents[i]["eventtitle"];
  9.         mcEvents["mcEvent"+i].tCity.text = aEvents[i]["city"];
  10.         mcEvents["mcEvent"+i].tDate.text = aEvents[i]["startdate"]+" - " + aEvents[i]["enddate"];
  11.         mcEvents["mcEvent"+i].onRelease = function() {
  12.             var id:Number = this._name.substring(5);
  13.             displayEventDetails(aEvents, id , mcEvents["mcEvent"+id]._y -100); // height with ref to main movie
  14.         };
  15.     }
  16. }
compuboy1010 ist offline   Mit Zitat antworten
Alt 22-07-2005, 14:24   #13 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Nur so eine Idee... Kann das ja gerade nicht testen.
ActionScript:
  1. this.onMouseDown = function() {
  2.     for (var x in mcEvents) {
  3.         if (mcEvents[x].hitTest(_root._xmouse, _root._ymouse) && mcEvents[x]._name == "mcClose") {
  4.             removeMovieClip(mcEvents[x]._parent);
  5.         }
  6.     }
  7. };
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 27-07-2005, 07:55   #14 (permalink)
... loves Japan!
 
Benutzerbild von compuboy1010
 
Registriert seit: Apr 2005
Ort: D'dorf; DE
Beiträge: 715
Klappt leider nicht.

Hier noch etwas für mich unlösbares. Vielleicht sieht jemand auf den ersten Blick was falsch ist, aber ich hocke schon wieder ein paar Stunden vor diesem Code und bin dabei aufzugeben.

In der displayEventlist() werden die Events alle schön hintereinander aufgelistet. Klickt man nun auf ein Event öffnet sich wie gewünscht das Fenster und bei allen Daten steht "undefined". In der displayEventDetails() scheint aEvents unbekannt zu sein. Warum bloß?

ActionScript:
  1. var aEvents:Array = new Array();
  2. function displayEventlist(aEvents:Array):Void {
  3.     var yPosition:Number;
  4.     for (var i = 0; i<aEvents.length; i++) {
  5.         mcEvents.attachMovie("event", "mcEvent"+i, mcEvents.getNextHighestDepth());
  6.         mcEvents["mcEvent"+i]._x = 10;
  7.         yPosition = (mcEvents["mcEvent"+i]._height*i)+30;
  8.         mcEvents["mcEvent"+i]._y += yPosition;
  9.         mcEvents["mcEvent"+i].mcTitle.tTitle.text = aEvents[i]["eventtitle"];
  10.         mcEvents["mcEvent"+i].tCity.text = aEvents[i]["city"];
  11.         mcEvents["mcEvent"+i].tDate.text = aEvents[i]["startdate"]+" - "+aEvents[i]["enddate"];
  12.         mcEvents["mcEvent"+i].onRelease = function() {
  13.             var id:Number = this._name.substring(5);
  14.             displayEventDetails(aEvents, id, mcEvents["mcEvent"+id]._y-100);
  15.             // height with ref to main movie
  16.         };
  17.     }
  18. }
  19. function displayEventDetails(aEvents:Array, eventID:Number, yPosition:Number):Void {
  20.     //if(this["mcDetails"+eventID-1]) {  // close previous details
  21.     //    this["mcDetails"+eventID-1].removeMovieClip();
  22.     //}
  23.     this.tTest.text = "eventID;";
  24.     this.attachMovie("details", "mcDetails"+eventID, this.getNextHighestDepth());
  25.     this["mcDetails"+eventID]._x = 100;
  26.     this["mcDetails"+eventID]._y = yPosition;
  27.     var sDetails:String = "";
  28.     this["mcDetails"+eventID].tTitle.text = aEvents[eventID]["eventtitle"];
  29.     sDetails += "<b>Datum:</b> "+aEvents[eventID]["startdate"]+" - "+aEvents[eventID]["enddate"]+"<br>";
  30.     sDetails += "<b>Ort:</b> "+aEvents[eventID]["city"]+"<br>";
  31.     sDetails += "<b>Referent:</b> "+aEvents[eventID]["referent"]+"<br>";
  32.     sDetails += "<b>Contact:</b> "+aEvents[eventID]["contact"]+"<br>";
  33.     sDetails += "<b>Email:</b> "+aEvents[eventID]["email"]+"<br>";
  34.     sDetails += "<b>Tel:</b> "+aEvents[eventID]["tel"]+"<br>";
  35.     this["mcDetails"+eventID].tDetails.htmlText = sDetails;
  36.     this["mcDetails"+eventID].mcClose.onRelease = function() {
  37.         this._parent.removeMovieClip();
  38.     };
  39.     /*
  40.     this["mcDetails"+eventID].onPress = function() {
  41.         this.startDrag();
  42.     };
  43.     this["mcDetails"+eventID].onRelease = function() {
  44.         this.stopDrag();
  45.     }; */
  46. }

Geändert von compuboy1010 (27-07-2005 um 08:03 Uhr)
compuboy1010 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 01:01 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele