Flashhilfe.de - Flash Community

Content mit Mausrad scrollen [Flash CS4]

Forum > Flash Entwicklung > Content mit Mausrad scrollen

 


AntwortenRegistrieren Seite1  

 23.08.2009, 21:24 
Beiträge: 5
Registriert: Aug 2009

Content mit Mausrad scrollen
Hallo,
ich weiss es gibt zu diesen Thema schon einige Threads, leider habe ich es mit diesen nicht hinbekommen.

Ich habe eine Flash Datei mit eigenen Scrollen den Text bekomme ich aber einfach nicht mit dem Mausrad gescrollt.

Kann sich mal einer bitte die Datei anschauen und mir helfen?

Vielen Dank im Voraus!

MfG

Angehängte Dateien:
Adobe Flash Quelldatei cs3.fla46.50 KB
Adobe Flash Quelldatei cs4.fla77.50 KB
 23.08.2009, 21:40Re1
Beiträge: 36
Registriert: Aug 2009

hey,
also um das mal ganz schnell für dein script zu schreiben sähe das so aus:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
var mouseListener:Object = new Object();
mouseListener.onMouseWheel = function(wheelNum:Number) {
   sliding = true;
   slider._y -= wheelNum;
   if (slider._y < 0) slider._y = 0;
   if (slider._y > bgnd._height - slider._height) slider._y = bgnd._height - slider._height;
   getPos();
   reDraw();
   sliding = false;
};
Mouse.addListener(mouseListener);


das problem, wenn ich deine startMove() funktion aufrufe scrollt der immer weiter... aber ich denke, das kannst du selbst umbauen.. aber mein script einfach mal ans ende der scripts im mc scroller kopieren und schauen, was passiert.
wichtig, du musst erst auf den flashfilm klicken, damit der den focus hat.
mfg willi
Geändert von Willi_ am 23.08.09 um 21:47 Uhr

 23.08.2009, 23:08Re2
Beiträge: 5
Registriert: Aug 2009

Themenautor/in

Hey danke der Scroll an sich funktioniert schonmal leider hab ich keine Idee wie ich das stoppen soll, ich hab erst vor kurzen mit flash angefangen und es tut mir leid wenn ich mich echt dumm anstelle.

MfG
 
nicht sichtbar bei eingeloggten Mitgliedern
 23.08.2009, 23:16Re3
Beiträge: 36
Registriert: Aug 2009

spontan würd ich in der funktion startMove() ein neues argument hinzufügen. wenn das true ist soll die onEnterFrame- Funktion nur einmal durchgeführt werden. sähe dann so aus:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
function startMove(d, once) {
   if (speed == undefined) speed = 2;
   sliding = true;
   bgnd.onEnterFrame = function() {
      slider._y += (d * speed);
      if (slider._y < 0) slider._y = 0;
      if (slider._y > bgnd._height - slider._height) slider._y = bgnd._height - slider._height;
      if(once) {
         stopMove();
      }
   }
}

und das ganze wird dann im MouseWheel-Event wie folgt aufgerufen
ActionScript:
1
2
3
4
5
6
var mouseListener:Object = new Object();
mouseListener.onMouseWheel = function(wheelNum:Number) {
    startMove(-wheelNum, true);
    getPos();
};
Mouse.addListener(mouseListener);


problem ist noch, dass man die methode getPos() noch zusätzlich aufrufen muss, da 'sliding' bereits false ist, wenn sie automatisch aufgerufen wird und deshalb nicht in die if schleife der funktion geht...
Geändert von Willi_ am 23.08.09 um 23:31 Uhr

 23.08.2009, 23:43Re4
Beiträge: 5
Registriert: Aug 2009

Themenautor/in

Wunderbar klappt ohne Problem!

Danke dafür!
Alleine hätte ich das wahrscheinlich nie geschafft :(

Gibt es eine möglichkeit den Focus automatisch zu setzen wenn die maus über dem Text und/oder den scroller kommt?

MfG
 23.08.2009, 23:52Re5
Beiträge: 36
Registriert: Aug 2009

das ist nur in der flash testumgebung so..
hab den film mal in eine html datei eingebunden und getest, da funktioniert es ohne extra klick auf den flashfilm. einzige voraussetzung: der mauszeiger muss über dem flashfilm sein, aber das ist ja auch logisch... über seinen rahmen hinaus kann flash ja diese events nicht abfangen.

mfg Willi
 
nicht sichtbar bei eingeloggten Mitgliedern1&1 Webhosting
 24.08.2009, 00:09Re6
Beiträge: 5
Registriert: Aug 2009

Themenautor/in

Du hast recht hab ich auch grad gemerkt.

Nun arbeite ich gerade daran das Script das du geschrieben hast für einen anderen Scroller umzubauen der ebenfalls von mir benutzt wird leider kriege ich es nicht hin :(

Wenn du noch nicht zu viel von mir hast kannst du ja da auch mal drüber gucken :)

Hier der Code
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
function scroller():Void
{
   scroller_mc._y = scrollable_area_mc._y;
   tn_group._y = tn_group_area._y;
   sr = tn_group_area._height/tn_group._height;
   scroller_mc._height = scrollable_area_mc._height * sr;
   sd = scrollable_area_mc._height - scroller_mc._height;
   cd = tn_group._height - tn_group_area._height;
   cr = cd / sd;
   
   if( tn_group._height <= tn_group_area._height )
   {
      scroller_mc._visible = scrollable_area_mc._visible = false;
   }
   else
   {
      scroller_mc._visible = scrollable_area_mc._visible = true;
   }
   scroller_mc.onPress = function()
   {
      this.startDrag(false, this._x, scrollable_area_mc._y, this._x,
                 scrollable_area_mc._y + scrollable_area_mc._height - this._height + 2);
      onDrag = true;
      this.onEnterFrame = function()
      {
         new_y = tn_group_area._y + scrollable_area_mc._y*cr - this._y*cr;
         cv = (new_y - tn_group._y) * scrolling_speed;
         tn_group._y += cv;
         if( onDrag == false && cv_old == cv )
            delete this.onEnterFrame;
         cv_old = cv;
      }
   }
   scroller_mc.onRelease = scroller_mc.onReleaseOutside = function()
   {
      this.stopDrag();
      onDrag = false;
   }
   }
 24.08.2009, 00:28Re7
Beiträge: 36
Registriert: Aug 2009

was genau funktioniert denn nicht? gibt er dir eine fehlermeldung? oder lässt er sich nicht scrollen?
 24.08.2009, 01:06Re8
Beiträge: 5
Registriert: Aug 2009

Themenautor/in

Der scroll an sich funktioniert jedoch versuche ich die funktion einzubauen um es ebenfalls mit mausrad zu bedienen.

Es kommt keine fehlermeldung es scrollt einfach nicht mit dem mausrad mit dem balken per hand geht es trotzdem
 
Themen
Ähnliche Beiträge zum Thema
Text Scrollen mit Mausrad [Flash 10] 06.04.2010 - manuel.kleinert
 

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.
Partner Webseiten: DesignerInAction.de   Designnation.de   Mediengestalter.info   php-resource.de   phpforum.de   phpwelt.de   Pixelio.de   PSD-Tutorials.de   Tutorials.de

Haftungsausschluss   Datenschutzerklärung   Hier Werben   Impressum
© 1999-2012 Sebastian Wichmann - Flashhilfe.de