SWiSH Forum
Forum użytkowników programów SWiSH

SWiSH Max - Szeregownie jpg w wierszach(xml)+problem z podpięciem linkow

wharp - Pią 02 Gru, 2011 09:08
Temat postu: Szeregownie jpg w wierszach(xml)+problem z podpięciem linkow
Witam

Sprawa wygląda tak, że mam do załadowania jednocześnie 6 obrazków w dwóch wierszach z pliku xml. Na ten moment jpgi ładują się w jednym wierszu. Nie znam za dobrze AS więc mam problem z ich uszergowaniem, proszę o pomoc:

Oto kod ładujący:


Kod:
onSelfEvent (load) {
    menuXML = new XML();
    menuXML.ignoreWhite = true;
    menuXML.onLoad = function(success) {
        if (success) {
            mainItem = this.firstChild.childNodes;
           
            for (var i=0; i<mainItem.length; i++) {
                item = mainmenu.duplicateMovieClip("mainmenu" + i, i);
               
                item._x = 65*i;
                item._y = 100;
                   
                 
                           
                item.hit.go.loadMovie(mainItem[i].attributes.post);
               
            }
               
        }
    }
    menuXML.load("posters.xml");
}
onFrame (1) {
    stop();


Na koniec dodam, że pracuje na swishmax 4

espe1 - Pią 02 Gru, 2011 09:54

ładują się w jednym wierszu bo:

item._x = 65*i; (65 x 6 = 6 zdjęć w jednym wierszu)
item._y = 100; (1 wiersz)
gdzie i=6 (jest 6 obrazków)
rozumiem, że rozmiar obrazka to 65x100,

więc trzeba zmienić na:

item._x = 65*i/2; ( 65x6/2 = 3 zdjęcia w jednym wierszu)
item._y = 100*2; (2 wiersze)

wharp - Wto 13 Gru, 2011 01:08

Ok rozwiązałem problem inaczej, teraz mam problem z podpięciem linków pod załadowane przez xml obrazki.

kod wygląda tak:

Kod:

onSelfEvent (load) {
    menuXML = new XML();
    menuXML.ignoreWhite = true;
    menuXML.onLoad = function(success) {
        if (success) {
            mainItem = this.firstChild.childNodes;
           
            for (var i=0; i<mainItem.length; i++) {
             
                item = mainmenu.duplicateMovieClip("mainmenu" + i,  i);
                       
               
                mainmenu0._x = 10;
                mainmenu0._y = 50;
               
                mainmenu1._x = 100;             
                mainmenu1._y = 50;
               
                mainmenu2._x = 200;
                mainmenu2._y = 50;
             
                mainmenu3._x = 10;
                mainmenu3._y = 100;
                 
                mainmenu4._x = 100;
                mainmenu4._y = 100;
               
                mainmenu5._x = 200;
                mainmenu5._y = 100;
             
                           
                item.hit.go.loadMovie(mainItem[i].attributes.post);
             
            }
               
        }
    }
    menuXML.load("posters.xml");
}
onFrame (1) {
    stop();
}
onFrame (5) {
    stop();
}


a plik xml tak:
Kod:

<?xml version="1.0" encoding="UTF-8"?>

<images>
<image post="posters/poster1.jpg" link="http://jakisadres1"/>
<image post="posters/poster2.jpg" link="http://jakisadres2"/>
<image post="posters/poster3.jpg" link="http://jakisadres3"/>
<image post="posters/poster4.jpg" link="http://jakisadres4"/>
<image post="posters/poster5.jpg" link="http://jakisadres5"/>
<image post="posters/poster6.jpg" link="http://jakisadres6"/>
</images>


Proszę o pomoc.

espe1 - Pią 16 Gru, 2011 22:17

http://www.swishtalk.com/showthread.php?t=34431

czyli kod do linków wygląda mniej więcej tak:

Kod:

onLoad () {
    menuXml = new XML();
    menuXml.ignoreWhite = true;
    menuXml.load("myMenu.xml");
    menuXml.onLoad = function(success) {
        if (success) {
            msg.text = "XML loaded successfully";
            menuItem = this.firstChild.childNodes;
            for (var i=0; i<menuItem.length; i++) {
                n = "iC" add i;
                duplicatesprite("itemClip", (n), i);
                (n)._x = 60;
                (n)._y = 20+20*i;
                (n).buttonLabel.text = menuItem[i].attributes.name;
                (n).myUrl = menuItem[i].attributes.url;
                (n).onRelease = function () {
                    getUrl(this.myUrl, _blank);
                }
        }
       
     }
     else {
         msg.text = "Could not load external data";
     }
    };
    itemClip._visible = false;
}


tylko musisz zmienić w xml "link" na "url" albo odwrotnie w skrypcie

wharp - Sob 17 Gru, 2011 22:51

Faktycznie trochę trzeba było poprzerabiać ale ogólnie przydała sie pomoc kod działa tak jak chciałem; dzieki :)

Powered by phpBB modified by Przemo © 2003 phpBB Group