mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 23.04.2024 19:20 Benutzername: Passwort: Auto-Login

Thema: Symbol via Button bewegen? vom 02.06.2007


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Multimedia -> Symbol via Button bewegen?
Seite: 1, 2  Weiter
Autor Nachricht
creeze
Threadersteller

Dabei seit: 24.10.2004
Ort: Bad Langensalza
Alter: 34
Geschlecht: Männlich
Verfasst Sa 02.06.2007 20:41
Titel

Symbol via Button bewegen?

Antworten mit Zitat Zum Seitenanfang

Hallo,
ich habe folgendes problem:
ich möchte ein symbol/grafik bewegen und möchte dazu mehrere buttons verwenden. das heißt wenn man z.B auf button 1 klickt dann rückt das Symbol an Position 0, wenn man auf button 2 klickt auf position 500 usw.
das bild soll sich ganz einfach horizontal bewegen.
wie löse ich das am besten?
ich habe schon im handbuch nach möglichen befehlen zum bewegen einnes symbols gesucht aber leider keine gefunden.

crz
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
therapiekind

Dabei seit: 14.03.2006
Ort: In deinem Kopf
Alter: -
Geschlecht: -
Verfasst So 03.06.2007 12:52
Titel

Antworten mit Zitat Zum Seitenanfang

http://www.flashfiles.nl/ShowDetail.asp?NewsId=6636
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
creeze
Threadersteller

Dabei seit: 24.10.2004
Ort: Bad Langensalza
Alter: 34
Geschlecht: Männlich
Verfasst So 03.06.2007 14:20
Titel

Antworten mit Zitat Zum Seitenanfang

das script funktioniert leider nicht. würde ich holländisch können könnte ich ja jetzt nachlesen woran das liegen könnte, aber ich habe leider keinen plan Grins

ich habe jetzt nocheinmal ein bisschen in der hilfe nachgelesen und bin schoneinmal auf folgende lösung gekommen:
(script für den button)

Code:
on (press) {
   setProperty("bild", _x, 500);
}


es funktioniert, ist allerdings nicht wirklich elegant, da das bild einfach auf diese position springt.
ich glaube ich werde hier auch mit "setProperty" nicht sehr weit kommen, oder?

crz

//EDIT:

Code:
on (press) {
   do { 
   bild._x +=5;
   x = getProperty(_root.bild, _x);
   }
   while (x < 300)
}

ich habe es jetzt einmal so versucht. im prinzip müsste es klappen, nur bräuchte ich eine verzögerung in der schleife. die hilfe konnte mir da leider nicht weiter helfen. wie kann ich das script verzögern?

crz


Zuletzt bearbeitet von creeze am So 03.06.2007 14:47, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
therapiekind

Dabei seit: 14.03.2006
Ort: In deinem Kopf
Alter: -
Geschlecht: -
Verfasst So 03.06.2007 16:59
Titel

Antworten mit Zitat Zum Seitenanfang

Aus ActionScript for Flash MX: The Definitive Guide:

Code:

// Method: MovieClip.slideTo()
//   Desc: Animates a clip to the point (leaderX, leaderY) at the specified speed.
// Params: leaderX The x-coordinate to move to.
//         leaderY The y-coordinate to move to.
//         speed Rate of movement (pixels per frame).
MovieClip.prototype.slideTo = function (leaderX, leaderY, speed)
{
    // Only move if the clip's not at the destination.
    if (this._x != leaderX && this._y != leaderY)
    {
        // Create a nested function and assign it as the clip's
        // onEnterFrame() event handler.
        this.onEnterFrame = function ()
        {
            // Determine distance between clip and destination.
            // The parameters leaderX and leaderY are accessed via
            // the scope chain.
            var deltaX = this._x - leaderX;
            var deltaY = this._y - leaderY;
            var dist = Math.sqrt((deltaX * deltaX) + (deltaY * deltaY));

            // Allocate speed between x and y axes.
            var moveX = speed * (deltaX / dist);
            var moveY = speed * (deltaY / dist);
            // If the clip has enough speed to overshoot the destination,
            // just go to the destination. Otherwise, move according to
            // the speed specified by the slideTo() parameter.
            if (speed >= dist)
            {
                this._x = leaderX;
                this._y = leaderY;
                // The clip has arrived, so remove onEnterFrame().
                delete this.onEnterFrame;
            }
            else
            {
                this._x -= moveX;
                this._y -= moveY;
            }
        };
    }
};

// Example Usage:
// Slides the clip to the mouse is clicked.
theClip_mc.onMouseDown = function ()
{
    this.slideTo(_root._xmouse, _root._ymouse, 10);
};
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
creeze
Threadersteller

Dabei seit: 24.10.2004
Ort: Bad Langensalza
Alter: 34
Geschlecht: Männlich
Verfasst So 03.06.2007 20:58
Titel

Antworten mit Zitat Zum Seitenanfang

gut, danke, jetzt blicke ich da schon eher durch.

allerdings funktioniert es immernoch nicht so wirklich.
ich habe jetzt das hier:

Code:
MovieClip.prototype.slideTo = function (leaderX, leaderY, speed)
{
    if (this._x != leaderX && this._y != leaderY)
    {
        this.onEnterFrame = function ()
        {
            var deltaX = this._x - leaderX;
            var deltaY = this._y - leaderY;
            var dist = Math.sqrt((deltaX * deltaX) + (deltaY * deltaY));

            var moveX = speed * (deltaX / dist);
            var moveY = speed * (deltaY / dist);
            if (speed >= dist)
            {
                this._x = leaderX;
                this._y = leaderY;
                delete this.onEnterFrame;
            }
            else
            {
                this._x -= moveX;
                this._y -= moveY;
            }
        };
    }
};


und 2 schaltflächen denen ich folgendes script zugewisen habe:

Code:
on (press) {
   bild.onMouseDown = function ()
{
    bild.slideTo(400, 0, 40);
}
}


(der anderen habe ich andere koordinaten gegeben)

problem ist aber, dass sich das bild erst bewegt wenn man 2 mal auf eine schaltfläche gedrückt hat und die andere schaltfläche reagiert danach überhauptnicht mehr... Menno!

schlimm wenn man anfänger ist * Ich geb auf... *

crz
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
therapiekind

Dabei seit: 14.03.2006
Ort: In deinem Kopf
Alter: -
Geschlecht: -
Verfasst So 03.06.2007 21:38
Titel

Antworten mit Zitat Zum Seitenanfang

creeze hat geschrieben:
und 2 schaltflächen denen ich folgendes script zugewisen habe:

Code:
on (press) {
   bild.onMouseDown = function ()
{
    bild.slideTo(400, 0, 40);
}
}

Deine Anweisung eingedeutscht:
Wenn du mich (Button) klickst, erhält bild (der Movieclip) eine dem onMouseDown-Event zugewiesene Funktion, die ausgeführt wird, sobald man bild klickt. Man muss also erst bild klicken, damit es sich bewegt.

Versuch's mal so:
Code:
on (press)
{
    bild.slideTo(400, 0, 40);
}
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
creeze
Threadersteller

Dabei seit: 24.10.2004
Ort: Bad Langensalza
Alter: 34
Geschlecht: Männlich
Verfasst So 03.06.2007 22:31
Titel

Antworten mit Zitat Zum Seitenanfang

ouh.... wie dumm von mir :\

funktioniert aber jetzt mit einmal klicken. dankeschön Lächel

allerdings bewegt sich das bild wiederum nur wenn man auf einen button klickt. Menno!

crz
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
therapiekind

Dabei seit: 14.03.2006
Ort: In deinem Kopf
Alter: -
Geschlecht: -
Verfasst So 03.06.2007 23:48
Titel

Antworten mit Zitat Zum Seitenanfang

creeze hat geschrieben:
allerdings bewegt sich das bild wiederum nur wenn man auf einen button klickt. Menno!

War es nicht auch so angedacht?
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen Flash Button mit Animation wenn Cursor den Button Verlässt?
[html/css] Submit-Button ohne Button
MC mit AS bewegen
DIV in Animation bewegen
Text Bewegen in Illustrator
Actionscript objekt bewegen
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Multimedia


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.