[GastForen Archiv Adobe Flash & ActionScript Schaltflächen Verhalten per ActionScript auslösen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Archiv - Archivierte Foren
Themen
Beiträge
Moderatoren
Letzter Beitrag

Schaltflächen Verhalten per ActionScript auslösen

MatthiasKievernagel
Beiträge gesamt: 15

9. Jan 2007, 13:50
Beitrag # 1 von 6
Bewertung:
(4971 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
 
Hallo,

die Frage betrifft Flash8 und Schaltflächen.
Es ist ziemlich einfach an verschiedene Mausereignisse
ActionScript-Funktionen anzuhängen.
Im Prinzip glaube ich auch, daß man per ActionScript
diese Funktionen finden und programmgesteuert aufrufen kann.
Aber bislang sehe ich keine Möglichkeit die Schaltflächen
Verhalten (RollOver, RollOut, Click) inklusive angehängter
Funktion programmgesteuert auszulösen.
Also sozusagen eine programmgesteuerte Maus zu programmieren
und synthetisch Clicks zu produzieren.

ich habe daran eine Weile herumprobiert und glaube inzwischen
es geht einfach nicht.
Andere Meinungen?
Gibt es einen Umweg (über Events oder so) ?

Bei der Antwort bitte bedenken, ich komme von der
Programmiererseite. Ich kenne Flash8 von der Designerseite
her nicht besonders gut.

Danke schon mal,
Matthias Kievernagel
X

Schaltflächen Verhalten per ActionScript auslösen

hmaus
Beiträge gesamt: 692

9. Jan 2007, 14:26
Beitrag # 2 von 6
Beitrag ID: #269802
Bewertung:
(4961 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Matthias,

hm, ganz kapier ich nicht, was Du meinst. Es ist eigentlich aus der Programmiersicht in Flash 8 einfacher als aus visueller Sicht.

Vom Prinzip schreibst Du ja einfach Funktionen in AS. Jeder Schaltfläche wird ein entsprechende Aktion zugewiesen, z.B.

function tuewas()
{
...
}


meinKnopf_btn.onRelease = function(){
// normalerweise steht heir die Mausaktion
// da Du ja eine funktion hast, verbindest Du dich mit dieser direkt oder
// per Aufruf
tuewas();

}

Kann natürlich sein, dass ich nicht verstehe, was Du tun willst.

Ah, fällt mir gerade auf ...

Meinst Du mit Schaltflächen normale Flash-Buttons (Symbol Schaltfläche mit den 4 Keyframes?). Aus Programmiersicht solltest Du da normale MovieClips verwenden, dann hast Du eigtnlich alles, was Du brauchst. Magst Du mehrere States haben (normal, Rollover, click) dann kannst Du einfach in den Schlüsselbildern des MovieClips navigieren (Stichwort: zeitleistensteuerung) oder komplett das MovieClip per AS austauschen.


Grüße

Helge


als Antwort auf: [#269789]
(Dieser Beitrag wurde von iPartner am 9. Jan 2007, 14:29 geändert)

Schaltflächen Verhalten per ActionScript auslösen

ganesh
Beiträge gesamt: 1981

9. Jan 2007, 15:10
Beitrag # 3 von 6
Beitrag ID: #269814
Bewertung:
(4955 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Kleines Detail... wenn deine Funktion keine Parameter braucht, kannst du das auch in Kurzform schreiben:

also statt:
meinKnopf_btn.onRelease = function(){
tuewas();
}

so:
meinKnopf_btn.onRelease = tuewas;


als Antwort auf: [#269802]

Schaltflächen Verhalten per ActionScript auslösen

MatthiasKievernagel
Beiträge gesamt: 15

9. Jan 2007, 15:16
Beitrag # 4 von 6
Beitrag ID: #269816
Bewertung:
(4953 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
 
Entschuldigung für eventuelle Unklarheiten.

>Meinst Du mit Schaltflächen normale Flash-Buttons (Symbol Schaltfläche >mit den 4 Keyframes?). Aus Programmiersicht solltest Du da normale >MovieClips verwenden, dann hast Du eigtnlich alles, was Du brauchst. >Magst Du mehrere States haben (normal, Rollover, click) dann kannst Du >einfach in den Schlüsselbildern des MovieClips navigieren (Stichwort: >zeitleistensteuerung) oder komplett das MovieClip per AS austauschen.

Auf die Flash Animation habe ich keinen (kaum) Einfluß.
In dem konkreten Fall handelt es sich
um Schaltflächen (ActionScript-Klasse Button).

Das Problem einmal ganz konkret:
In einer ActionScript-Funktion xy, die mit der Schaltfläche
nichts zu tun hat, soll etwa folgender Code
stehen:

Code
  if ( dies oder das ) { 
...
/* RollOver für Button auslösen */
MyButton.unbekannteFlashFunktion();
} else {
/* RollOut für Button auslösen */
MyButton.andereUnbekannteFlashFunktion();
}


Wobei MyButton eine Schaltflächeninstanz ist
und die Funktionen (oder Attribute oder was auch immer),
die ich brauche, sollen dafür sorgen,
daß sich die Schaltfläche visuell so verhält wie
bei einem Mouse RollOver, RollOut und einem Mausklick
und natürlich auch zugehöriger Eventcode ausgeführt wird.

Vielen Dank schon mal,
Matthias Kievernagel


als Antwort auf: [#269802]

Schaltflächen Verhalten per ActionScript auslösen

MatthiasKievernagel
Beiträge gesamt: 15

9. Jan 2007, 19:32
Beitrag # 5 von 6
Beitrag ID: #269869
Bewertung:
(4938 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
 
Hallo Helge,
beim Erneuten Durchlesen deiner Antwort ist mir der folgende Satz in die
Augen gesprungen:

>Magst Du mehrere States haben (normal, Rollover, click) dann kannst Du
>einfach in den Schlüsselbildern des MovieClips navigieren

Ich denke, das ist exakt das, was ich brauche, nur eben
für Schaltflächen.
Ist das möglich?

Eine andere Idee, die mir beim Blättern in der Doku
(Ich habe die beiden Flash8/ActionScript PDFs von Adobe
AS 2.0 Language Reference und Learning AS 2.0 in Flash)
gekommen ist:
Kann man das Ziel mit einem AsBroadcaster Objekt
erreichen, welches ein passendes Event für die Schaltfläche
generiert?

Grüße,
Matthias Kievernagel


als Antwort auf: [#269802]

Schaltflächen Verhalten per ActionScript auslösen

MatthiasKievernagel
Beiträge gesamt: 15

12. Jan 2007, 15:46
Beitrag # 6 von 6
Beitrag ID: #270508
Bewertung:
(4909 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
 
Abschließende Anmerkung:
Alle Informationen, die ich aus verschiedenen Quellen
erhalten habe, deuten an, daß man
mit Schaltflächen bei diesem Problem programmgesteuert
wenig ausrichten kann.

Außer: Man braucht den optischen Effekt nicht oder
hat Schaltflächen ohne einen solchen Effekt. Dann läßt sich
eine programmgesteuerte Benutzung von Schaltflächen
realisieren.

Vielen Dank für eure Aufmerksamkeit,
Matthias Kievernagel


als Antwort auf: [#269869]
X