PDA

Volledige versie bekijken : Text en Photo inladen via XML


SabaSahar
%Europe/Berlin %439 %2005, 11:33
Halloo,

ik heb een menu bar gemaakt in Flash met behulp van XML, dus het werkt als volg:
iedere menu en submenu en sub-submenu wordt in XML toegevoegd.
nu wil ik met behulp van een tekst bestand texten en foto's koppelen met de sub-submenu's.
dus dat ik een lijst van de teksten of de foto's maakt in een tekst bestand, en dat die lijst door de XML bestand in Flash in geladen wordt!!!

ik ben een begginner,en weet niet veel van Ationscript en XML!!!!!

heb ik het duidelijk kunnen uitleggen?!!

zo ziet mijn Action script code eruit:

GenerateMenu = function (container, name, x, y, depth, xml_element) {
var akt_element;
var akt_eintrag;
var akt_menu = container.createEmptyMovieClip(name, depth);
for (var i = 0; i<xml_element.childNodes.length; i++) {
akt_eintrag = akt_menu.attachMovie("menueintrag", "eintrag"+i+"_mc", i);
akt_eintrag._x = x;
akt_eintrag._y = y+i*akt_eintrag._height;
akt_eintrag.trackAsMenu = true;
var col = new Color(akt_eintrag.hintergrund);
col.setTransform({ra:100, rb:0, ga:50, gb:0, ba:0, bb:0});
akt_element = xml_element.childNodes[i];
akt_eintrag.aktion = akt_element.attributes.aktion;
akt_eintrag.variables = akt_element.attribute.variables;
akt_eintrag.name.text = akt_element.attributes.name;
if (xml_element.childNodes[i].nodeName == "menu") {
akt_eintrag.pfeil._visible = false;
akt_eintrag._x = x+i*akt_eintrag._width;
akt_eintrag._y = y;
akt_eintrag.xml_element = akt_element;
akt_eintrag.onRollOver = akt_eintrag.onDragOver=function () {
var x = this._x;
var y = this._y+this._height;
GenerateMenu(akt_menu, "submenu_mc", x, y, 1000, this.xml_element);
var col = new Color(this.hintergrund);
col.setTransform({ra:100, rb:0, ga:50, gb:50, ba:0, bb:0});};}
else if (xml_element.childNodes[i].nodeName == "submenu") {
akt_eintrag._x = x;
akt_eintrag._y = y+i*akt_eintrag._height;
akt_eintrag.xml_element = akt_element;
akt_eintrag.onRollOver = akt_eintrag.onDragOver=function () {
var x = this._x+this._width;
var y = this._y;GenerateMenu(akt_menu, "submenu_mc", x, y, 1000, this.xml_element);
var col = new Color(this.hintergrund);
col.setTransform({ra:100, rb:0, ga:50, gb:50, ba:0, bb:0});};}
else {
akt_eintrag.pfeil._visible = false;
akt_eintrag.onRollOver = akt_eintrag.onDragOver=function () { akt_menu.submenu_mc.removeMovieClip();
var col = new Color(this.hintergrund);
col.setTransform({ra:100, rb:0, ga:50, gb:50, ba:0, bb:0});};}
akt_eintrag.onRollOut =akt_eintrag.onDragOut=function () {
var col = new Color(this.hintergrund);
col.setTransform({ra:100, rb:0, ga:50, gb:0, ba:0, bb:0});};a
kt_eintrag.onRelease = function() {
Aktionen[this.aktion](this.variables);
CloseSubmenus();};}};
CreateMainMenu = function (x, y, depth, menu_xml) {
GenerateMenu(this, "mainmenu_mc", x, y, depth, menu_xml.firstChild);
mainmenu_mc.onMouseUp = function() {
if (mainmenu_mc.submenu_mc && !mainmenu_mc.hitTest(_root._xmouse, _root._ymouse,true)) {
CloseSubmenus();}};};
CloseSubmenus = function () { mainmenu_mc.submenu_mc.removeMovieClip();};
Aktionen = new Object();Aktionen.message = function(msg) {
ausgabe_txt.text = msg;};
Aktionen.gotoURL = function(urlVar) {
getURL(urlVar, "_blank");};
Aktionen.newMenu = function(menuxml) {
menu_xml.load(menuxml);};
menu_xml = new XML();
menu_xml.ignoreWhite = true;
menu_xml.onLoad = function(status) {
if (status) {CreateMainMenu(10, 10, 0, this);
ausgabe_txt.text = "Daten geladen...";}
else {ausgabe_txt.text = "Fehler: Daten konnten nicht geladen werden!";}};
menu_xml.load("menu1.xml");


en zo ziet mijn XML code in elkaar:

<?xml version="1.0"?>
<menu name="beispiel">
<menu name="Cultuur" aktion="message" variables="Menü 1 Text...">
<submenu name="Bioscoop">
<eintrag name="Pathe"/>
<eintrag name="FilmHuis"/>
</submenu>
<submenu name="Teather">
<eintrag name="Staatschowburg"/>
</submenu>
</menu>

SabaSahar
%Europe/Berlin %437 %2005, 11:29
kan niemand mij helpen???