Forenindex » Archiv » Adobe Flash & ActionScript » Schaltflächen Verhalten per ActionScript auslösen

Schaltflächen Verhalten per ActionScript auslösen

MatthiasKievernagel
Beiträge gesamt: 15

9. Jan 2007, 13:50
Bewertung:

gelesen: 4970

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

Schaltflächen Verhalten per ActionScript auslösen

hmaus
Beiträge gesamt: 692

9. Jan 2007, 14:26
Bewertung:

gelesen: 4960

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
--
3D- / VFX-Specialist & Trainer

p i x e l t r a i n | 3d | vfx | animation
consulting | training | production

3d // cinema 4d . maya . vue
vfx // adobe after effects cs6 . nukex
tools // zbrush . 3d-coat . mudbox . syntheyes . realflow

http://www.hmaus.de
http://www.pixeltrain.de

(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
Bewertung:

gelesen: 4954

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;

Schaltflächen Verhalten per ActionScript auslösen

MatthiasKievernagel
Beiträge gesamt: 15

9. Jan 2007, 15:16
Bewertung:

gelesen: 4952

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

Schaltflächen Verhalten per ActionScript auslösen

MatthiasKievernagel
Beiträge gesamt: 15

9. Jan 2007, 19:32
Bewertung:

gelesen: 4937

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

Schaltflächen Verhalten per ActionScript auslösen

MatthiasKievernagel
Beiträge gesamt: 15

12. Jan 2007, 15:46
Bewertung:

gelesen: 4908

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