Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 26-10-2004, 14:57   #1 (permalink)
FlashDynamo
 
Registriert seit: Jun 2004
Ort: Rostock
Beiträge: 56
Question Maustaste immer noch gedrückt?

Hallo zusammen !!

Ich möchte folgendes Umsetzen, weiß aber nicht genau wie das in Actionscript funktioniert:

PHP-Code:
on(press) {
 while(
Maustaste ist gedrückt) {
    
_root.zoomIn();
  }

Meine Frage nochmal anders: wie kann ich, nachdem das einmalige "onPress"-Event ausgelöst wurde, in AS pollen, ob die Maustaste gedrückt ist? Oder wie könnte eine andere Lösung für mein Problem aussehen!

Besten Dank,
cardiac
cardiac ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:04   #2 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
So z.B.:
ActionScript:
  1. on(press) {
  2.   var zoomID = setInterval(_root.zoomIn, 100); // --> 100ms, anpassbar
  3. }
  4. on(release) {
  5.   clearInterval(zoomID);
  6. }

[edit]
oder so...
ActionScript:
  1. this.createEmptyMovieClip("zoomer", 1);
  2. //
  3. on(press) {
  4.   zoomer.onEnterFrame = _root.zoomIn;
  5. }
  6. on(release) {
  7.   delete zoomer.onEnterFrame;
  8. }
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)

Geändert von sonar (26-10-2004 um 15:08 Uhr)
sonar ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:04   #3 (permalink)
FlashDynamo
 
Registriert seit: Jun 2004
Ort: Rostock
Beiträge: 56
nochmal ein kleiner Nachtrag:

Ich will vermeiden ein Interval zum Zoomen zu benutzen, daher diese Idee mit der While-Schleife. Bei Versuchen in diese Richtung mußte ich leider feststellen, daß sich gestartete Intervalle mit on(release) nicht beenden lassen!
Warum weiß ich nicht! Vielleicht ist die interval-dauer von 20ms zu kurz für Flash?
cardiac ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:08   #4 (permalink)
FlashDynamo
 
Registriert seit: Jun 2004
Ort: Rostock
Beiträge: 56
Ja wie gesagt, leider wird das Interval nicht gekillt! Ich kann ja die zoom-function noch dazu pasten:

PHP-Code:
//zoom in to scale
function zoomIn(xPosyPosscale) {
    
clearInterval(zoomInterval);
    
    
//zoom in
    
if (curMap._xscale maxScale) {
        var 
scaleFactor 1.05;
        
        
zoomStepIn(xPosyPosscaleFactor);
        
        if (
curMap._xscale scale) {
            
zoomInterval setInterval(zoomIn20xPosyPosscale);
        }
    
    }
        
    
updateAfterEvent();

Das zoomInterval ist nicht tot zu kriegen
cardiac ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:12   #5 (permalink)
FlashDynamo
 
Registriert seit: Jun 2004
Ort: Rostock
Beiträge: 56
Danke für das 2te Beispiel, das könnte klappen! Allerdings ist dann die Zoomgeschwindigkeit auf die aktuelle fps des MovieClips beschränkt, oder?
cardiac ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:12   #6 (permalink)
Neuer User
 
Benutzerbild von the binary
 
Registriert seit: Jul 2001
Ort: Berlin | Friedrichshain
Beiträge: 3.561
sollte eigentlich so funzen.. !?

versuch doch dann einfach mal die variante mit dem oEF..
die sollte auf jeden fall gehen.

gruss
__________________
8bm | join ff@BOINC
formpackage.org | audiohunter.de | problematica.de | 8ball-media.de/blog | taikonauten.cn
the binary ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:16   #7 (permalink)
FlashDynamo
 
Registriert seit: Jun 2004
Ort: Rostock
Beiträge: 56
oEF??
oh, klar onEnterFrame
cardiac ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:23   #8 (permalink)
FlashDynamo
 
Registriert seit: Jun 2004
Ort: Rostock
Beiträge: 56
Leider wird zoomer.onEnterFrame ebenfalls nur 1x ausgeführt!
cardiac ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:34   #9 (permalink)
FlashDynamo
 
Registriert seit: Jun 2004
Ort: Rostock
Beiträge: 56
nochmal der ist-zustand: (geht leider nicht)

PHP-Code:
on(press) {
        
_root.zoomInterval setInterval(_root.zoomIn20Stage.width 2Stage.height 2_root.maxScale);
        
}

on(releasereleaseOutside) {
    
clearInterval(_root.zoomInterval);

cardiac ist offline   Mit Zitat antworten
Alt 26-10-2004, 15:47   #10 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
PHP-Code:
function laber()
{
    
trace(a++)
}

_root.onMouseDown=function()
{
    
_root.inter=setInterval(laber,100)
}
_root.onMouseUp=function()
{
    
clearInterval(inter)

das funzt primo !



@freund sonar

wenn du var inter...
schreibst kann es nicht
funzen

grz@bin & sonar
warrantmaster ist offline   Mit Zitat antworten
Alt 26-10-2004, 16:05   #11 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Hi Freund & Meister warrant
Zitat:
Zitat von warrantmaster
@freund sonar

wenn du var inter...
schreibst kann es nicht
funzen
Wie bitte, was...? Schon klar, wenn ich die var zoomID innerhalb einer Funktion definieren würde, dass sie nur innerhalb dieser lokal bekannt wäre. Aber das tu ich ja nicht...
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 26-10-2004, 16:17   #12 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
'on(press){}' == 'onPress=function(){}'

also doch eine function
warrantmaster ist offline   Mit Zitat antworten
Alt 26-10-2004, 16:35   #13 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Zitat:
Zitat von Obelix
Nein, mein Herr! Nein, mein Herr!


Is nicht des gleiche, Meister W...
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 26-10-2004, 16:43   #14 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
...nich.....

PHP-Code:
mc.onPress=function()
{
    var 
=2
}

mc1.onPress=function()
{
    
trace(x)

warrantmaster ist offline   Mit Zitat antworten
Alt 26-10-2004, 17:05   #15 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Das hab ich nicht gemeint...
Du weist ja dem onPress-Handler eine anonyme Funktion zu. Da is die Variable außerhalb nicht bekannt.

Ich meinte hingegen die "OldSchool-Variante" mit on() direkt auf dem Button/MC drauf, verstehste... da geht's nämlich schon mit var (weil die dann in der übergeordneten Timeline lebt)
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 20:04 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele