Toon posts:

[Flash] xml buttons

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo,

Ben gister avond bezig geweest om een xml bestandje uit te lezen en die om te zetten naar knoppen. Nu is het gelukt om textvelden te maken en knoppen die ook nog is werken.

Alleen nu wil ik ze samen voegen en erger nog een mouseover action aan de knop toevoegen toevoegen (dat de kleur van de tekst veranderd) nu heb ik dat gebrobeerd maar ik kan op de 1 of andere manier niet meer de kleur aanpassen van een dynamisch gecreerd tekstveld.

Ik ga zo naar huis dan heb ik een voorbeeld maar als iemand alvast een tip heeft, graag!!

thanks

Verwijderd

Topicstarter
Dit is wat ik nu heb:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
function loadXML(loaded) {
    image  =  [];
    link = [];
    tekst=[];
    button=[];
    
if (loaded) {
    xmlNode  =   this.firstChild;
    total = xmlNode.childNodes.length;
    
    //trace(total);
    t=10;
    
    for  (i=0; i<total; i++)  {
        
        image[i] = xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue;
        link[i] = xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue;
        
        _root["link"+i]=createTextField("link"+i, i, 20, t, 150, 30);
        _root["link"+i].textColor = 0xFF0000;
        _root["link"+i].text = image[i];
        _root["link"+i].selectable =false;      
        
    

        _root.createEmptyMovieClip("button"+i, 100+i);
        _root["button"+i].attachMovie("banBut", "newName", 100+i);
        _root["button"+i].lineStyle(1, 0x000000, 100);
        _root["button"+i].beginFill(0xFF0000, 0);
        _root["button"+i].moveTo(-50, -6);
        _root["button"+i].lineTo(50, -6);
        _root["button"+i].lineTo(50, 6);
        _root["button"+i].lineTo(-50, 6);
        _root["button"+i].endFill(-50, -6);
        _root["button"+i]._x=55;
        _root["button"+i]._y=t+10;
        
    
        _root["button"+i].onRelease=function(){
                _root.testmovie.gotoAndStop(2);
                
        }
        
        _root["button"+i].onRollOver=function(){
                _root.testmovie.gotoAndStop(1);
        }       
        t = t+15;
    }

    name_txt.text = image[0];
    comment_txt.text = link[0];
    } else {
         trace("file not loaded!");
    }
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("test.xml");

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 16-01 10:51
Structuur lijkt me niet helemaal te kloppen, ik zou een movieclip maken met daarin het buttonplaatje en het textfield. Aan die hele movieclip hang je dan de onRelease en onRollOver functies waarin je vrij makkelijk dan het textfield kan veranderen van kleur.

Verwijderd

Topicstarter
Thanks,

Maar de button is niet een plaatje, het is de bedoeling dat de tekst van kleur veranderd daarom loop ik zo te k*tten. Of kan ik de dynamische text in een knop laden? en dat die standaard de kleur veranderd bij mouse over ofzo?

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 16-01 10:51
Je kan een movieclip gewoon als button gebruiken. Movieclip kent ook onRelease en onRollOver. Daarmee kan je heel simpel textkleur veranderen van een textfield. (Hint: textfieldname.textColor = 0xFF0000; voor rood bijvoorbeeld).

Verwijderd

Topicstarter
ah... dus ik moet niet dit doen.
code:
1
2
3
_root["button"+i].onRollOver=function(){
                _root["link"+i].textColor = 0xFF0000;
        }

maar dit:
code:
1
2
3
 _root["button"+i].onRollOver=function(){
               _root.eval("button"+i).eval("link"+i).textColor = 0xFF0000;
        }


Of doe ik nu iets heel stoms :)

[ Voor 10% gewijzigd door Verwijderd op 18-05-2006 16:33 ]

Pagina: 1