PDA

Volledige versie bekijken : Ingeladen xml plaatje, button maken


Sushi
%Europe/Berlin %539 %2008, 12:57
Beste allemaal,

onzeGegevens = new XML();
onzeGegevens.ignoreWhite = true;
onzeGegevens.onLoad = leesXML;
onzeGegevens.load("www.poep.nl");
function leesXML(geladen) {
if (geladen) {
tekstVeldje1.text = this.firstChild.childNodes[0].childNodes[0].childNodes[0];
if (tekstVeldje1.text == "image") {
nummer = 4;
} else {
nummer = 3;
}
tekstVeldje2.text = this.firstChild.childNodes[0].childNodes[nummer].childNodes[0];
imgurl = this.firstChild.childNodes[0].childNodes[1].childNodes[0];
loadMovie(imgurl, pic2);
}
}

Met dit laad ik plaatjes in en text. Maar hoe maak ik hier nou een werkende button van. Ik wil van het ingeladen plaatje een button maken.

Dit heb ik al geprobeerd :

var newbtn = 1;
var toetsenBord:Object = new Object();
Key.addListener(toetsenBord);
toetsenBord.onKeyDown = function() {
if (Key.getCode() == Key.DOWN) {
newbtn++;
if (newbtn>2) {
newbtn = 1;
}
} else if (Key.getCode() == Key.UP) {
newbtn--;
if (newbtn<1) {
newbtn = 2;
}
}
newbtnActie();
if (Key.getCode() == Key.ENTER) {
trace("onRelease called");
}
};
function newbtnActie() {
for (var i:Number = 1; i<=2; i++) {
this["pic"+i]._alpha = 100;
}
this["pic"+newbtn]._alpha = 20;
}

Dan navigeert ie wel over die plaatje maar na enter drukken tracet hij niks.

Een Onrelease button maken van pic2 lukte ook al niet. Hij doet werkelijkk helemaal niks.

Zou iemand mij kunennn uitleggen wat ik fout doe, zijn er bepaalde regels bij xml?

gr Sue

Jan
%Europe/Berlin %607 %2008, 14:35
Dan navigeert ie wel over die plaatje maar na enter drukken tracet hij niks.
Als je test in Flash moet je in het testscherm uit een menuutje kiezen: disable shortcut keys

Een Onrelease button maken van pic2 lukte ook al niet. Hij doet werkelijkk helemaal niks.
Dat stukje script zie ik nergens.
En:
Je kan pas een onPress en zo aan een movieclip koppelen nadat het plaatje is ingeladen en op stage staat. Als er al een onPress 'aanhangt' dan wordt die gewist vanaf het moment dat je er iets inlaadt. Net zoals alle andere variabelen en inhoud van een movieclip gewist wordt als je er iets nieuw in laadt.
Dus ipv loadMovie(imgurl, pic2); te gebruiken moet je de MovieClipLoader class gebruiken en in de onLoadInit doe je dan target.onPress=function(){}
http://www.flashfocus.nl/forum/showpost.php?p=345219&postcount=5

Groeten,
Jan

Sushi
%Europe/Berlin %685 %2008, 16:27
Ohh kzie het al, nu ik test met flash lite, doet hij het wel :D vet. BEdankt voor je reactie.

Maar zoeiets kan dus niet met normale flash?

Sushi
%Europe/Berlin %702 %2008, 16:51
var newbtn = 1;
var toetsenBord:Object = new Object();
onzeGegevens = new XML();
onzeGegevens.ignoreWhite = true;
onzeGegevens.onLoad = leesXML;
onzeGegevens.load("scheetjes.nl");
function leesXML(geladen) {
if (geladen) {
tekstVeldje1.text = this.firstChild.childNodes[0].childNodes[0].childNodes[0];
if (tekstVeldje1.text == "image") {
nummer1 = 4;
nummer2 = 2;
} else {
nummer1 = 3;
nummer2 = 1;
}
tekstVeldje2.text = this.firstChild.childNodes[0].childNodes[nummer1].childNodes[0];
link = this.firstChild.childNodes[0].childNodes[nummer2].childNodes[0];
imgurl = this.firstChild.childNodes[0].childNodes[1].childNodes[0];
loadMovie(imgurl, pic2);
Key.addListener(toetsenBord);
}
}
toetsenBord.onKeyDown = function() {
if (Key.getCode() == Key.DOWN) {
newbtn++;
if (newbtn>2) {
newbtn = 1;
}
} else if (Key.getCode() == Key.UP) {
newbtn--;
if (newbtn<1) {
newbtn = 2;
}
}
newbtnActie();
if (Key.getCode() == Key.ENTER) {
getURL(link, "_blank");
trace("link"+link);
}
};
function newbtnActie() {
for (var i:Number = 1; i<=2; i++) {
this["pic"+i]._alpha = 100;
}
this["pic"+newbtn]._alpha = 20;
}


Nu lukt het me die plaatje te selecteren. Maar hoe krijg ik het voor elkaar dat ik navigeer tussen het plaatje "pic2" en het tekstveldje2.text. Ze moeten gwn de zelfde enterfunctie hebben.

Kan iemand mij hier mee helpen?

----------------

Het lukt me tussen die 2 te navigeren. Maar uiterlijk van de tekst lukt me niet te beinvloeden.

pic1.text = this.firstChild.childNodes[0].childNodes[nummer1].childNodes[0];
loadMovie(imgurl, pic2);

Dit zijn ze. pic1 en pic2.

function newbtnActie() {
for (var i:Number = 1; i<=2; i++) {
this["pic"+i]._alpha = 100;
pic1.textColor = 0x00FF00;
}
this["pic"+newbtn]._alpha = 20;
pic1.textColor = 0xFF0000;
}

Het plaatje word wel doorzichtig maar de tekst krijgt geen andere kleur. Hij krijgt de kleur rood nadat ik up or down druk. Maar wil dat hij switch tussen 2 kleuren. Hoe krijg ik dat voor elkaar ><?

------

function newbtnActie() {
for (var i:Number = 1; i<=2; i++) {
this["tekst"+i]._alpha = 100;
this["tekst"+i].textColor = 0x00FF00;
}
this["tekst"+newbtn]._alpha = 20;
this["tekst"+newbtn].textColor = 0xFF0000;
}

bij deze word hij alleen maar groen >_>

---edit...Hij werkt al!! joepieee!

x Sue