ここに問題があります...私はフレックスアプリケーション(actionscript)に取り組んでいます...
アプリケーションに、特定の位置に 2 つのボタンと 3 つのキャンバス コンポーネントを含むパネルがあります...今、パネルの現在の状態をファイルまたはデータベースに保存したいと考えています...その後、同じパネルを再度ロードしたいと考えています。戻ってアプリケーションを実行すると、私のアプリケーション...
そのため、readObject() および writeObject() メソッドを使用してパネル全体を ByteArray オブジェクトに変換しようとしましたが、ByteArray を読み取り、addChild() メソッドを使用してアプリケーションにパネルを追加すると、何も追加されず、エラーや障害はありません...
writeObject は、印刷できる ByteArray を作成しますが、それを取得して子を追加すると、パネルを取得できず、子です...
誰かが助けてくれれば...それはありがたいです...事前に感謝します...
これがサンプルコードです...私がやりたいことを説明しています...
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import mx.collections.ArrayCollection;
[Bindable] private var photoFeed:ArrayCollection;
var buffer:ByteArray;
private function init():void{
addEventListener(KeyboardEvent.KEY_DOWN, keyHandler);
searchTerms.setFocus();
buffer = new ByteArray();
}
private function keyHandler(event:KeyboardEvent):void{
if(event.charCode == 13){
myButton.label = "Exit";
try{
buffer.writeObject(myData);
}catch(error:Error){
Alert.show(error.toString(),"Encoding Error");
}
removeChild(myData);
reloadButton.visible = true;
Alert.show("HBox is deleted","Alert");
}
}
private function reloadHBox():void{
Alert.show("Trying to load Hbox","Alert");
try{
buffer.position = 0;
var obj:HBox = buffer.readObject() as HBox;
}catch(error:Error){
Alert.show(error.toString(),"Decoding Error");
}
addChild(obj);
Alert.show("Hbox is reloaded","Alert");
}
]]>
</mx:Script>
<mx:Button id="reloadButton" label="Reload HBox" visible="false" click="reloadHBox()"/>
<mx:HBox width="100%" id="myData">
<mx:Label text="Hi Rashmin here..."/>
<mx:TextInput id="searchTerms" name="searchTerms" text="Hello How are you?"/>
<mx:Button id="myButton" label="Enter"/>
</mx:HBox>
HBox を再生成したいので、助けが必要です...