1&1 Webhosting
Flashhilfe.de - Flash Community

In Flash aktuelle Mouseposition außerhalb des Films auslesen [Flash 10]

Forum > ActionScript 3.0 > In Flash aktuelle Mouseposition außerhalb des Films auslesen

 


AntwortenRegistrieren Seite1  

 10.06.2009, 14:30 
Beiträge: 4
Registriert: Jun 2009

In Flash aktuelle Mouseposition außerhalb des Films auslesen
Hallo zusammen,

wie kann ich in Flash die aktuelle Mouseposition außerhalb des Flash Films auslesen? Ich möchte in einem Banner die aktuelle Mouseposition außerhalb des Banners auslesen, um die Mouse zu verfolgen.

Gibt es da eine einfach Möglichkeit?

Danke.
 10.06.2009, 14:49Re1
Benutzerbild von springerFlashhilfe.de Moderator
Beiträge: 4906
Wohnort: zuhaus
Registriert: Apr 2004

hi,
das geht nicht mit flash alleine, da du die position nur über dem flash rausbekommst...
in kombination mit javascript sollte dies aber machbar sein....
link
lieber chips essen und danach voller zweifel sein, als voller zweifel chips essen...
 10.06.2009, 15:17Re2
Beiträge: 4
Registriert: Jun 2009

Themenautor/in

ja. Das ist ja genau meine Frage. Wie bekomme ich diese Infos von JavaScript nach Flash?
 
nicht sichtbar bei eingeloggten Mitgliedern1&1 Webhosting
 11.06.2009, 11:06Re3
Beiträge: 15
Registriert: Jan 2008

External Interface heisst das Zauberwort:

[url=http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/external/ExternalInterface.html][/url]
 11.06.2009, 14:03Re4
Beiträge: 4
Registriert: Jun 2009

Themenautor/in

Hallo zusammen,

ich habe es jetzt folgendermaßen probiert und es funktioniert leider immer noch nicht.
Vielleicht sieht ja jemand meinen Fehler.

AS3-Code:

ActionScript:
1
2
3
4
5
6
7
import flash.external.*;

var param1:uint = 3;
var param2:uint = 7;
var result:uint = ExternalInterface.call("addNumbers", param1, param2);

JSParameter.text = result.toString();


JS-Code:
ActionScript:
1
2
3
4
5
6
7
<script language="JavaScript">
    // adds two numbers, and sends the result back to ActionScript
    function addNumbers(num1, num2)
    {
        return (num1 + num2);
}
</script>


Irgendwie macht der Aufruf von ExternalInterface.call Probleme.

Danke...
 11.06.2009, 14:15Re5
Benutzerbild von springerFlashhilfe.de Moderator
Beiträge: 4906
Wohnort: zuhaus
Registriert: Apr 2004

wonach du suchst ist wohl:

ActionScript:
1ExternalInterface.addCallback(...)


in der flashhilfe hats beispiele wie man das macht...
lieber chips essen und danach voller zweifel sein, als voller zweifel chips essen...
 
nicht sichtbar bei eingeloggten Mitgliedern
 11.06.2009, 15:08Re6
Beiträge: 4
Registriert: Jun 2009

Themenautor/in

nein eigentlich nicht. Ich möchte aus AS3 eine JavaScript Funktion aufrufen. Ich vermute, dass ich ExternalInterface.addCallback(...) nur, wenn ich aus JS eine AS Funktion aufrufen möchte.
 11.06.2009, 15:55Re7
Benutzerbild von springerFlashhilfe.de Moderator
Beiträge: 4906
Wohnort: zuhaus
Registriert: Apr 2004

hmm,
wenn du die frage stellst:
wie kann ich in Flash die aktuelle Mouseposition außerhalb des Flash Films auslesen? Ich möchte in einem Banner die aktuelle Mouseposition außerhalb des Banners auslesen, um die Mouse zu verfolgen

musst du ja von js eine flash-funktion aufrufen, oder ? da flash ja die position nicht ausserhalb des films ermitteln kann...

ich hab das jetzt mal für dich zusammengebastelt...

as
ActionScript:
1
2
3
4
5
6
7
import flash.external.ExternalInterface;

ExternalInterface.addCallback("setMousePosition",setMousePosition);
function setMousePosition(_x:Number,_y:Number):void
{
      this.testfeld.text = _x + " " + _y;
}


html
PHP:
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
40
<?
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<
title>ExternalInterface</title>
</
head>
<
script language="javascript">
function 
showit() { 
 
thisMovie("ExternalInterface").setMousePosition(event.x,event.y);
}

function 
showitMOZ(e) { 
   
thisMovie("ExternalInterface").setMousePosition(e.pageX,e.pageY);
}

function 
thisMovie(movieName) {
    if (
navigator.appName.indexOf("Microsoft") != -1) {
        return 
window[movieName];
    } else {
        return 
document[movieName];
    }
}

if (!
document.all) {
 
window.onmousemove=showitMOZ;
} else {
 
document.onmousemove=showit;
}
</script>
<body bgcolor="#ffffff">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="150" height="30" id="ExternalInterface" align="middle">
    <param name="allowScriptAccess" value="always" />
    <param name="allowFullScreen" value="false" />
    <param name="movie" value="ExternalInterface.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#999999" />    <embed src="ExternalInterface.swf" quality="high" bgcolor="#999999" width="150" height="30" name="ExternalInterface" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>

</body>
</html>
?>
lieber chips essen und danach voller zweifel sein, als voller zweifel chips essen...
 11.06.2009, 18:55Re8
Beiträge: 15
Registriert: Jan 2008

Beitrag entfern, da vollkommen am Thema vorbei :)
Geändert von fichti am 11.06.09 um 18:56 Uhr

 11.06.2009, 18:57Re9
Benutzerbild von springerFlashhilfe.de Moderator
Beiträge: 4906
Wohnort: zuhaus
Registriert: Apr 2004

ja, klar, dann musst du aber onEnterFrame oder mit einem interval die js-funktion aufrufen... finde es besser dies mit js / mousemove zu machen. damit erspart man sich dann auch allfällige onMouseMove's in flash....
lieber chips essen und danach voller zweifel sein, als voller zweifel chips essen...
 11.06.2009, 19:00Re10
Beiträge: 15
Registriert: Jan 2008

Ich habs rausbearbeitet, weil ich nur die beiden letzten Beiträge gelesen habe.
Du hast natürlich recht, dass es sinnvoller ist, die Funktion durch js aufrufen zu lassen.
 
Themen
Ähnliche Beiträge zum Thema
 

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