Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-04-2007, 17:06   #1 (permalink)
Neuer User
 
Registriert seit: Feb 2007
Beiträge: 43
Mauszeiger ausserhalb der Bühne - Fadenkreuz ausblenden

Hallo zusammen.

Habt Ihr schon eine anwendbare Lösung gefunden, wie ich mein Fadenkreuz dazu bringe, wenn die Maus ausserhalb der Bühne ist, auszublenden, damit dieses nicht unschön am Rand klebt?

Bin ein totaler Neuling und nachdem ich nun den ganzen Tag vergebens die Forensuche gequält habe, stelle ich hier nochmal die Frage.

Den Ansatz einen riesen Button in den Hintergrund zu legen schein für mich ne gute Idee zu sein, allerdings weiss ich noch nicht, wie ich die Rollover-befehle anspreche bzw. eingebe.

Würde es gerne so haben, dass sich mein fadenkreuz erst beim Betreten der Bühne einblendet und auf dem Button der dort liegt, sich ändert in mein zweites Fadenkreuz.

Könnt Ihr mir da helfen?

LG Chris
RitterSportHH ist offline   Mit Zitat antworten
Alt 28-04-2007, 17:14   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Theoretisch geht das so hier:
PHP-Code:
function onMouseMove() {
    if (
_root._xmouse<|| _root._ymouse<|| _root._xmouse>breite || _root._ymouse>hoehe) {
        
fadenkreuz._visible false;
    } else {
        
fadenkreuz._visible true;
    }

Das Problem dabei ist, dass wenn du dein swf in html einbettest, außerhalb des swf die Mausposition nicht erkannt wird.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 28-04-2007, 17:18   #3 (permalink)
Neuer User
 
Registriert seit: Feb 2007
Beiträge: 43
genau das ist das problem. könnte ich einen großen button auf die gesamte bühne ziehen, sodass der kleine button dennoch erkanntwird?

wie müsste der code dazu aussehen?

vielen dank schon mal...

lg
RitterSportHH ist offline   Mit Zitat antworten
Alt 28-04-2007, 17:26   #4 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Ja, sicher geht das, wenn du ihn in den Hintergrund packst. Bringt dir aber nix, da sobald du über einen "kleinen" Button fährst das ein rollOut für den großen ist.
Könntest aber hitTest() nehmen. Zieh eine Fläche auf der untersten Ebene auf und lass überall z.B. 5px Rand. Dann einen MC draus machen und onEnterFrame() überprüfen, ob die Maus sich darüber befindet. Was bessers fällt mir da auch gerade nicht ein.

edit -> Mausposition außerhalb von Flash | ein Beispiel
Hab's nicht gelesen, aber die Suche dürfte auch noch mehr ausspucken.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++

Geändert von Der Frager (28-04-2007 um 17:29 Uhr)
Der Frager ist offline   Mit Zitat antworten
Alt 28-04-2007, 17:46   #5 (permalink)
Neuer User
 
Registriert seit: Feb 2007
Beiträge: 43
beachte ich bin ein absoluter flash neuling

macht doch nix, wenn es ein rollout ist, denn auf dem kleinen button soll das fadenkreuz ja ohnehin gegen ein anderes ausgetauscht werden. wie mach ich das?

kannich das so in den button kopieren? wie bau ich da die rollover funktion ein?

würde das sonst einfach in den großen button kopieren und in den kleinen darüberliegenden entsprechend mit dem instanznamen des zweiten fadenkreuzes (crossover)

HTML-Code:
Mouse.hide();
cross._x = _xmouse;
cross._y = _ymouse;
cross.startDrag();
RitterSportHH ist offline   Mit Zitat antworten
Alt 28-04-2007, 18:09   #6 (permalink)
JMB
Neuer User
 
Registriert seit: Apr 2007
Beiträge: 59
PHP-Code:
kleinerButton.onRollOver = function(){
cross.visible false;
cross1.startDrag();
cross1.visible true;
}
großerButton.onRollOver = function(){
cross.visible true;
cross1.visible false;
}
großerButton.onRollOut = function(){
cross.visible false;

wobei das mit den 5px Rand nicht unbedingt einwandfrei funktioniert - wenn der Mauszeiger schnell über den Rand herausgezogen wird, bevor der Frame wieder aktualisiert wurde, funktionierts nicht. also hohe FPS.
(ich hoffe ich laber jetzt keinen ******^^)
JMB ist offline   Mit Zitat antworten
Alt 28-04-2007, 19:47   #7 (permalink)
Neuer User
 
Registriert seit: Feb 2007
Beiträge: 43
kommt das jetzt alles in den grossen button?

wenn ich das einfach so hinein kopiere kommt folgende Fehlermeldung

**Fehler** Szene=Szene 1, Ebene=Buttongross, Bild=233:Zeile 1: Anweisung muss innerhalb einer on-Prozedur vorliegen
großerButton.RollOver = function(){

**Fehler** Szene=Szene 1, Ebene=Buttongross, Bild=233:Zeile 5: Anweisung muss innerhalb einer on-Prozedur vorliegen
großerButton.RollOut = function(){

Anzahl der ActionScript-Fehler: 2 Gemeldete Fehler: 2


oder was kommt wohin?

und kommt das auchnoch irgendwo hinein?
HTML-Code:
Mouse.hide();
cross._x = _xmouse;
cross._y = _ymouse;
cross.startDrag();

Geändert von RitterSportHH (28-04-2007 um 19:52 Uhr)
RitterSportHH ist offline   Mit Zitat antworten
Alt 28-04-2007, 20:30   #8 (permalink)
Neuer User
 
Registriert seit: Feb 2007
Beiträge: 43
habe jetzt jedem button folgenden code gegeben und es funktioniert soweit.

allerdings weiss ich den befehl nicht, welcher mein fadenkreuz beim verlassen, also rollout wieder ausblndet.

habt ihr da noch nen tip für mich?

PHP-Code:
on rollover )
{
Mouse.hide();
cross._x _xmouse;
cross._y _ymouse;
cross.startDrag();
}
on rollout )
{
cross.hide();

RitterSportHH ist offline   Mit Zitat antworten
Alt 28-04-2007, 20:51   #9 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
crossie._visible=false;
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 28-04-2007, 20:57   #10 (permalink)
Neuer User
 
Registriert seit: Feb 2007
Beiträge: 43
danke rusty. klappt schon prima, aber nur beim ersten rollover, beim zweiten mal sieht man kein fadenkreuz mehr

PHP-Code:
buttongross.onRollOver = function() {
Mouse.hide();
cross._x _xmouse;
cross._y _ymouse;
cross.startDrag();
}
buttongross.onRollOut = function() {
cross._visible=false;
}  
buttonklein.onRollOver = function() {
Mouse.hide();
crossover._x _xmouse;
crossover._y _ymouse;
crossover.startDrag();
}

buttonklein.onRollOut = function() {
crossover._visible=false;

RitterSportHH 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:05 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele