Uživatelské nástroje

Nástroje pro tento web


tutorialy:wizard_cw

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

tutorialy:wizard_cw [2007/04/14 15:19]
tribula vytvořeno
tutorialy:wizard_cw [2007/05/13 23:40] (aktuální)
tribula
Řádek 27: Řádek 27:
 \\ \\
 \\ \\
 +
 +
 ====== Propojení modelu a Flashové animace umístěné v kontejneru ActiveX v aplikaci Control Web ====== ====== Propojení modelu a Flashové animace umístěné v kontejneru ActiveX v aplikaci Control Web ======
   * Na panel nebo pracovní ploch umístěte z inspektoru přístrojů přístroj //ActiveX// {{tutorialy:​komponenta.jpg|}}.   * Na panel nebo pracovní ploch umístěte z inspektoru přístrojů přístroj //ActiveX// {{tutorialy:​komponenta.jpg|}}.
Řádek 38: Řádek 40:
   error=integer,​0;​   error=integer,​0;​
 begin begin
-  ​system.GetREDFullPath('​nazev_klipu.swf',​ &​path,&​ok,&​error);​+  ​files.GetREDFullPath('​nazev_klipu.swf',​ &​path,&​ok,&​error);​
   self.LoadMovie(0,​path);​   self.LoadMovie(0,​path);​
 end_procedure;​ end_procedure;​
Řádek 63: Řádek 65:
     StringovaHodnota = val(mujFlash.GetVariable('​nazevPromenne'​),​10);​     StringovaHodnota = val(mujFlash.GetVariable('​nazevPromenne'​),​10);​
 </​code>​ </​code>​
 +
 +
 +===== Problém komunikace s ActionScriptem 3 =====
 +FIXME
 +
 +ActionScript 3 komunikuje s vnějším světem pomocí dvou procedur
 +
 +
 +
 +**komunikace z flashe ven:**
 +<code actionscript>​
 +flash.external.ExternalInterface.call("​názevVnějšíFunkceTřebaVJavaScriptu",​ parametr1, parametr2,​...)
 +</​code>​
 +**komunikace z vnějšku do flashe:**
 +<code actionscript>​
 +flash.external.ExternalInterface.addCallback("​názevFunkceTřebaVJavaScriptu",​ nazevFunkceVActionScriptu);​
 +</​code>​
 +to dobře funguje s Java Scriptem: např. flasová animace v AS3:
 +
 +{{tutorialy:​pokus.swf|}}
 +
 +může komunikovat s JavaScriptem v prohlížeči a ve vyskakovacím okénku prohlížeče se bude periodicky zobrazovat zpráva o tom, že šnek zalezl nebo vylezl.
 + 
 +zdroj v ActionScriptu:​
 +
 +<code actionscript>​
 +import flash.external.*;​
 +class SnekASlunce extends MovieClip {
 + var snek_mc:​MovieClip;​
 + var slunce_mc:​MovieClip;​
 + var obloha_mc:​MovieClip;​
 + function SnekASlunce() {
 + snek_mc.onVylezlJsem = function() {
 + //šnek zacne lézt
 + ExternalInterface.call("​pokus",​ "​vylezl jsem"​);​
 + _parent.play();​
 + };
 + snek_mc.onZalezam = function() {
 + //šnek zaleze
 + ExternalInterface.call("​pokus",​ "​zalezam"​);​
 + //šnek se zastavi
 + _parent.stop();​
 + };
 + slunce_mc.onVychod = function() {
 + if (_parent.snek_mc.jsemZalezlej == true) {
 + _parent.snek_mc.vylez();​
 + }
 + _parent.obloha_mc.rozedniSe();​
 + };
 + slunce_mc.onZapad = function() {
 + if (_parent.snek_mc.jsemVylezlej == true) {
 + _parent.snek_mc.zalez();​
 + }
 + _parent.obloha_mc.setmiSe();​
 + };
 + //​volání z Flashe ven
 + //​ExternalInterface.call("​názevFunkceVJavaScriptu",​ parametr1, parametr2,​...)
 + ExternalInterface.call("​pokus",​ "Ahoj z flashe"​);​
 + //​volání do flashe
 + //​ExternalInterface.addCallback("​názevFunkceVJavaScriptu",​ nazevFunkceVActionScriptu);​
 + }
 +}
 +
 +</​code>​
 +
 +zdroj v HTML:
 +
 +<code html>
 +<html xmlns="​http://​www.w3.org/​1999/​xhtml"​ xml:​lang="​en"​ lang="​en">​
 +<​head>​
 +<meta http-equiv="​Content-Type"​ content="​text/​html;​ charset=iso-8859-1"​ />
 +<​title>​pokus</​title>​
 +</​head>​
 +<body bgcolor="#​ffffff">​
 +<​!--url'​s used in the movie-->
 +<!--text used in the movie-->
 +<!-- saved from url=(0013)about:​internet -->
 +<object classid="​clsid:​d27cdb6e-ae6d-11cf-96b8-444553540000"​ codebase="​http://​fpdownload.macromedia.com/​pub/​shockwave/​cabs/​flash/​swflash.cab#​version=9,​0,​0,​0"​ width="​800"​ height="​600"​ id="​pokus"​ align="​middle">​
 +<param name="​allowScriptAccess"​ value="​sameDomain"​ />
 +<param name="​movie"​ value="​pokus.swf"​ /><​param name="​quality"​ value="​high"​ /><​param name="​bgcolor"​ value="#​ffffff"​ /><​embed src="​pokus.swf"​ quality="​high"​ bgcolor="#​ffffff"​ width="​800"​ height="​600"​ name="​pokus"​ align="​middle"​ allowScriptAccess="​sameDomain"​ type="​application/​x-shockwave-flash"​ pluginspage="​http://​www.macromedia.com/​go/​getflashplayer"​ />
 +</​object>​
 +<!-- *************************** -->
 +<​!--ručně přidáno do flashem 9 vygenerované html stránky -->
 +<script language="​JavaScript">​
 + function pokus(text){
 + if (text==undefined){
 + text="​iniciální text";
 + }
 + window.alert(text);​
 + }
 +</​script>​
 +<!-- *************************** -->
 +</​body>​
 +</​html>​
 +
 +</​code>​
 +
 +
 +{{tutorialy:​pokusexternikomunikacevas3.zip|zazipovaný zdroják}}
 +
 +
 +Zatím ale neumím komunikovat s CW. Je to důležité,​ protože nám to dá možnost komunikovat se sofistikovanými objekty uživatelského rozhraní poskládanými ve Flexu (např. s "​gumovými grafy"​).
 +
 +FIXME JK 18.3.2007
 +
tutorialy/wizard_cw.1176556770.txt.gz · Poslední úprava: 2007/04/14 15:19 autor: tribula