Leonite999
%Europe/Berlin %885 %2008, 21:14
geachte lezer,
ik begrijp dat dit mss wat ver van jullie bed is maar heeft er iemand ervaring met movieclips in C#
ik maak nl met C# een nieuwe SWF file aan en wil hierin een movieclip van een andere SWF plaatsen.
nu dacht ik dit aan C# door te geven als een "object" maar daar loopt mn flash op vast (dunno why)
weet er iemand hoe ik dit best oplos?
mvg Tom
tilpo
%Europe/Berlin %970 %2008, 23:17
Ik denk niet zo snel dat iemand ervaring daarme heeft op dit forum. Ik zou het misschien ook even op de engelse Actionscript forum site zetten: http://actionscript.org/
PS: Please ga niet negatief denken over mij omdat ik naar een rivaliserend forum verwijs :)
BernardV
%Europe/Berlin %987 %2008, 23:41
Misschien kun je iets meer info geven over wat je doet?
Maakt je met behulp van classes/code van derden in c# een SWF aan of werk je zelf helemaal in bytecode?
Kun je misschien iets laten zien, code snippets ofzo...
Dan kunnen we misschien wat meer :)
Leonite999
%Europe/Berlin %423 %2008, 10:10
even wat code ter verduidelijking:
ik werk met extended interface in flash waardoor het mogelijk is om een knop in flash een C# methode te laten uitvoeren (ik laad die .swf in in mijn C# programma)
**de flashfile**
import flash.external.ExternalInterface;
knop_mc.addEventListener(MouseEvent.MOUSE_UP,metho deOproep);
function methodeOproep(event:Event):void{
ExternalInterface.call("flashPlayer_FlashCall");
}
wat ik graag zou doen is een movieclip meegeven als parameter van die call methode
en ik dacht zo om een movieclip om te zetten in een object, maar dit lukt niet zo best
function methodeOproep(event:Event):void{
var o :Object = new MovieClip();
ExternalInterface.call("flashPlayer_FlashCall",o);
}
**C# code**
public Form1()
{
InitializeComponent();
try
{
flashplayer.LoadMovie(0, Application.StartupPath + "\\button.swf");
//bij events instellen...
flashplayer.FlashCall += new _IShockwaveFlashEvents_FlashCallEventHandler(flash Player_FlashCall);
}
catch (Exception)
{
this.Dispose();
}
}
private void flashPlayer_FlashCall(object sender, _IShockwaveFlashEvents_FlashCallEvent e)
{
//mogelijke oplossing is bitmapdata laten verzenden van flash --> C#, en die terug invullen in een nieuwe swf
//import SWFSCOUT!!!!anders werkt da nie :p
SWFScout.FlashMovie Movie = new FlashMovie();
Movie.InitLibrary("demo", "demo");
Movie.BeginMovie(0, 0, 800, 600, SWFScout.SWFSystemCoord.sscPix, 12, 6);
Movie.Compressed = true;
Movie.SetBackgroundColor(255, 255, 255);
//***probeersel***//
int Shape = Movie.AddShape(); // add new shape
Movie.SHAPE_Rectangle(0, 140, 150, 285); // draw rectangle
Movie.SHAPE_SetSolidColor(50, 255, 50, true, 255); // set solid fill for shape
Movie.PlaceShape(Shape, Movie.CurrentMaxDepth); // place shape into current depth
//***end probeersel***//
Movie.EndMovie();
Movie.SaveToFile(@"C:\Documents and Settings\Tom Moerman\Bureaublad\C#control\Concerter_V4\generate d SWF\flash.swf");
}
}
hier laad ik eerst de .swf in mn C# en bind ik een methode aan die knop_mc
ik zou hier dus dat object (met die movieclip) willen opvangen en kopieren naar een nieuw aangemaakte swf
vBulletin® v3.8.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.