[ascoders] Re: AW: Re: AW: Re: AW: AW: Erforderliche Symbole bei Komponenten

  • From: Ralf Siegel <ralf@xxxxxxxxxxx>
  • To: ascoders@xxxxxxxxxxxxx
  • Date: Sat, 22 Mar 2003 09:33:07 +0100


Ist da ein weiterer MC in der Bibliothek erforderlich, oder geht das
nicht auch dynamisch...

Moin Andre, ich glaube ich weiss jetzt worauf du hinaus willst. Es ist nicht unbedingt ein weiterer MC in der Bibo erforderlich, weil du auch z.B. mit createEmptyMovieClip() + createTextField() + diversen Zeichen-Methoden oder nur mit createTextField() die Reihen generieren und gestalten könntest.


Es ist aber zu empfehlen, tatsächlich einen extra MC anzulegen und mit einer Klasse, z.b. "DataRow" zu verbinden - da hast du später mehr Möglichkeiten dieses DataRow-Element als Baustein auszubauen. Hab mal ein kleines Beispiel gebaut. Wichtig: das Aufbauen der Reihen würde ich immer die List-Klasse machen lassen -> hier passiert das in der addRow() Methode

http://code.audiofarm.de/temp/AndreDataListClass.html
http://code.audiofarm.de/temp/AndreDataListClass.zip

Im ZIP siehst du auch, was ich gestern mit dem Assets Layer meinte - wenn du die DataList später einmal aus dem Komponenten-Panel ziehst, kommt das DataRow-Symbol immer mit hinterher. Aber ich glaube darum ging es gar nicht, oder?
______________________________________________________________________


Symbol "DataList"
______________________________________________________________________

#initclip
function DataListClass() {
        this.rows = 0;
}
DataListClass.prototype = new MovieClip();
Object.registerClass("DataList", DataListClass);

DataListClass.prototype.addRow = function(inhalt) {

var row_mc = this.attachMovie("DataRow", "row_" + this.rows, this.rows, {
_x:0,
_y:this.rows * 20});


        row_mc.setText(inhalt);
        this.rows++;
}
#endinitclip

______________________________________________________________________

Symbol "DataRow"
______________________________________________________________________

#initclip
function DataRowClass() {
        this.init();
}
DataRowClass.prototype = new MovieClip();
Object.registerClass("DataRow", DataRowClass);

DataRowClass.prototype.init = function() {
        this.createTextField("inhalt_txt", 0, 0, 0, 100, 20);
}

DataRowClass.prototype.setText = function(txt) {
        this.inhalt_txt.text = txt;
}
#endinitclip

______________________________________________________________________

Frame Skript
______________________________________________________________________


this.attachMovie("DataList", "dataList1", 0, { _x:10, _y:10});

for (var i=0; i<=10; i++) {
        dataList1.addRow("Hallo");
}

_______________________________________________________________________


                for(i=0;ikleinerc;i++) //Sorry, die Taste am Notebook
ist kaputt... :-(

Hehe, den muss ich mir merken :o)))


ralf ...


------------------------------------------------------ Archiv : //www.freelists.org/archives/ascoders/ Optionen : //www.freelists.org/list/ascoders ------------------------------------------------------

Other related posts: