Flashhilfe.de - Flash Community

funktion() mit Buttons [Flash MX]

 


AntwortenRegistrieren Seite1  

Firebrand#1
Benutzerbild von Firebrand
Beiträge: 31
Registriert: Aug 2005

09.11.2005, 13:46

Ich habe einen Script der für mehrere Buttons ausgeführt werden soll:

zb:
ActionScript:
1
2
3
on (release) {
play();
}


Da ich diesen Script nicht fünf mal hintereinander kopieren und wieder einfügen will, hab ich das in eine funktion geschrieben:

ActionScript:
1
2
3
4
5
funktion btn(){
on (release){
play();
}
}


und im AS vom Button einfach btn(); reingeschrieben.
Da kam aber dann diese Fehlermeldung:

Szene=Spiel, Ebene=Script 1, Bild=1: Zeile 3: ;' erwartet
    funktion btn(){

Szene=Spiel, Ebene=Script 1, Bild=1: Zeile 4: Mausereignisse sind nur bei Schaltflächeninstanzen zulässig
    on (release) {

Gibt es eine möglichkeit das hier anders zu machen??
Ohne dass er sagt "Mausereignisse sind nur bei Schaltflächeninstanzen zulässig".

Hoffe ich hab das verständlich hingeschrieben,
Firebrand

umlart#2
Benutzerbild von umlart
Beiträge: 6212
Wohnort: Berlin
Registriert: Nov 2002

09.11.2005, 15:01

mit c
function btn(){
on (release){
play();
}
}

*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*
*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*

Firebrand#3
Benutzerbild von Firebrand
Beiträge: 31
Registriert: Aug 2005

Themenautor/in

09.11.2005, 17:36

Er er zeigt aber immer noch

Szene=Spiel, Ebene=Script 1, Bild=1: Zeile 4: Mausereignisse sind nur bei Schaltflächeninstanzen zulässig
    on (release) {

an.

Und wenn ich die funktion innen button reinschreibe dann sagt er: muss innerhalb einen on-Prozedur liegen!!

Gibts da nix nützliche`??

Firebrand

umlart#4
Benutzerbild von umlart
Beiträge: 6212
Wohnort: Berlin
Registriert: Nov 2002

09.11.2005, 17:39

aals was veröffentlichst du es..??
evt..als 5..??

*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*
*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*

Firebrand#5
Benutzerbild von Firebrand
Beiträge: 31
Registriert: Aug 2005

Themenautor/in

09.11.2005, 17:45

Als exe oder swf..
funktioniert aber beides nicht

Firebrand

umlart#6
Benutzerbild von umlart
Beiträge: 6212
Wohnort: Berlin
Registriert: Nov 2002

09.11.2005, 17:48

leg mal die fla auf dein Server und poste die URL hierher

*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*
*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*

Firebrand#7
Benutzerbild von Firebrand
Beiträge: 31
Registriert: Aug 2005

Themenautor/in

09.11.2005, 17:55

Ok hab ich, es ist ein spiel bei dem man mit der maus versuchen muss nicht vom raumschiff runterzukommen!!

www.phoenixmedia.cybton.com/DATA/das raumschiff.fla

Hoffe jemand finden den fehler
Firebrand

H@ilo#8
Benutzerbild von H@ilo
Beiträge: 15261
Wohnort: Bremen
Registriert: Jan 2002

09.11.2005, 17:56

> Gibts da nix nützliche`??
Man kann sich Bücher kaufen und lernen!

Ein "on(release)"  hat nichts in einer Funktion zu suchen.
Man kann jedoch eine Funktion mit einem solchen Ereignis aufrufen.

function abspielen(){
play();
}

Aufruf:
on(release){
abspielen();
}

Macht in der Form natürlich keinen Sinn.
Sind es jedoch mehrere Aktionen / Befehle bzw. Scriptzeilen, dann kann man die in einer Funktion zusammenfassen und die Funktion aufrufen.

H@ilo
Freizeitflasher
H@ilo
Freizeitflasher
Firebrand#9
Benutzerbild von Firebrand
Beiträge: 31
Registriert: Aug 2005

Themenautor/in

09.11.2005, 18:09

>>Man kann sich Bücher kaufen und lernen!

Ich finde Foren sind besser weil man da genau sein Probem beschreiben kann.
ich hab auch ein paar bücher!!
Naja wenns da nix gibt dann mussichs halt ander machen...

Firebrand

H@ilo#10
Benutzerbild von H@ilo
Beiträge: 15261
Wohnort: Bremen
Registriert: Jan 2002

09.11.2005, 18:17

Also auf einen Button kommt ein Mausereignis - da kann man nicht einfach einen Funktionsaufruf drauf schreiben wie bei einer Bildaktion.

Der Funktionsaufruf muss im Buttonevent liegen - s.o.

Das ist nun wirklich nicht schwer zu verstehen.

H@ilo
Freizeitflasher
H@ilo
Freizeitflasher
Geändert von H@ilo am 09.11.05 um 18:17 Uhr
Kosh#11
Benutzerbild von Kosh
Beiträge: 744
Wohnort: Berlin
Registriert: Mar 2003

09.11.2005, 18:32

ich hab auch ein paar bücher!! <--- dann wirst du wohl die falschen Buecher haben oder eventuell das Buch falsch verwenden, d.h. du suchst falsch in den Buechern. Es gibt klare Unterschiede von dem was du oben wissen wolltest. Das eine ist ein Eventhandler
ActionScript:
1on(Ereignis){} oder onClipEvent(Ereignis){}
der ueber einen im Interpreter implementierten "Lauscher"  auf ein Ereignis wartet und bei Rueckgabe von "true" deine Anweisungen ausfuehrt. Eine Methode oder Funktion ist eine Anweisungsstruktur mit einem eindeutigen Namen, der Name der Funktion. In etwa so:
ActionScript:
1function meineErsteFkt(){ trace("ich wurde aufgerufen");}
, damit hast du einen quasi "Datenbehaelter" erstellt, der Kontrollstrukturen regelt, also das was du willst. Aber die Funktion alleine nutzt dir nichts, denn sie muss in einer Abhaengigkeit stehen um ueberhaupt erst aufgerufen zu werden. Das kannst du ueber mehrere Moeglichkeiten, angepasst an deine Beduerfnisse regeln. 3 simple moeglichkeiten:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//auf einem Button oder einem Movieclip liegt ein Eventhandler
on(release){ //wird ausgeloest sobald der Button oder Movieclip losgelassen wird
meineErsteFkt();  //aufruf der Funktion
}

//ein Eventhandler der nur auf Movieclips moeglich ist und im Takt deiner Wiederholrate deines Filmes aufgerufen wird (standard hierbei 12 Frames/second)
onClipEvent(enterFrame){
meineErsteFkt();
}

/*in der Hauptzeitleiste auf einem Schluesselbild, eine s.g. Ereignisprozedurmethode. Debei musst du beachten, dass dein Button oder Movieclip einen eindeutigen Instanznamen hat!*/
meinButton.onRelease = function(){
meineErsteFkt();
}


//der einfache Aufruf in der Hauptzeitleiste, die Funktion wird direkt nach dem  laden deines Films aufgerufen

meineErsteFkt();

dann hoffe ich mal dir ein wenig Verstaendnis uebergeholfen zu haben. Wenn du dir mal wieder ein Buch kaufen solltest, dann achte darauf, dass wenn du eine Sprache noch nicht beherrschst, dass du solche Grundlagen erlaeutert findest. Denn in einem Forum ist es zwar wie du richtig erkannt hast Ich finde Foren sind besser weil man da genau sein Probem beschreiben kann. zielgesetzter, aber setzt man dort gewisse Grundkenntnisse voraus. Letzlich ist es eine Community die gegenseitig von sich zerrt.


Nachtrag@all: Mir schwebt wieder die FAQ Idee vor die wir mal debattiert hatten. Waere vllt an der Zeit dieses mal wieder aufzugreifen...?

Gruss
Kosh
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Ich kann keinen Kuchen backen wenn ich nicht weiss was Mehl ist.
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Gruss
Kosh
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Ich kann keinen Kuchen backen wenn ich nicht weiss was Mehl ist.
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Geändert von Kosh am 09.11.05 um 18:57 Uhr
umlart#12
Benutzerbild von umlart
Beiträge: 6212
Wohnort: Berlin
Registriert: Nov 2002

09.11.2005, 18:47

erstelle eine Objektfunction als Prototype, damit es von überall aufgerufen werden kann
und ein leeres MC mit Kontrollfunction..
onClipEvent(enterFrame) {
pfadzumobjekt.funktiondersteuerung();
}
guggst du
http://www.umlart.de/dasraumschiffneu.swf
http://www.umlart.de/dasraumschiffneu.rar
und werf die überflüssigen Scripte raus die auf dein Raumschiff liegen
und achte auf expliziete Schreibweise
Mouse.hide statt mouse

*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*
*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*

Geändert von umlart am 09.11.05 um 18:51 Uhr
Firebrand#13
Benutzerbild von Firebrand
Beiträge: 31
Registriert: Aug 2005

Themenautor/in

09.11.2005, 21:42

ok vielen dank an alle, hat mir geholfen.
@umlart: könntest du mir die fla datei irgendwie zukommen lassen.

Firebrand

PS: Was is ne RAR datei?? Sorry wenn ich frag...

umlart#14
Benutzerbild von umlart
Beiträge: 6212
Wohnort: Berlin
Registriert: Nov 2002

09.11.2005, 21:49

"@umlart: könntest du mir die fla datei irgendwie zukommen lassen."
die liegt doch in der rar
das ist eine gepackte Datei..
ist mit Win-Zip
oder
Win-Rar zu öffnen
und Win-XP kann es auch selber ohne Tool
ansonsten hier

http://www.umlart.de/dasraumschiffneu.fla


*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*
*Man muß nicht wissen wie es geht,
man muß nur wissen wo es steht.*

Geändert von umlart am 09.11.05 um 21:55 Uhr

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2022 Sebastian Wichmann - Flashhilfe.de