近来在开发一个应用项目中,遇到一个富文本编辑框的问题,没想到这个问题在flex居然没有很好解决方案的。十分郁闷。
后来经过颠颠簸簸,我还是找到一个fckeditor的软件,这个是一个swc的flex_fck_editor_0.1。这个是是一个不错的工具,但是问题也不少。
第一个问题,就是wmode不可以用windows模式,那么flex的运行效率就很低,还会出现残影,这个是非常关键的问题;
第二个问题,就是把wmode调节成opaque后富文本编辑工具的,居然不可以跟着flex的滚动条拖动,永远浮现在flex层面上。
但是没办法,只能勉强嵌入这个工具。
经过多次测试还是没办法跟随拖动的,但是我发现我是完全有能力控制它的呈现和消失。
我就把相关程序封装在一个canvas里面,由这个控件控制它的打开和关闭
<?xml version="1.0" encoding="utf-8"?><BaseSimpleCanvas xmlns="com.shine.framework.view.*" xmlns:fck="http://www.happy-banana.be/fck" xmlns:mx="http://www.adobe.com/2006/mxml" horizontalScrollPolicy="off" verticalScrollPolicy="off"> <mx:Script> <!--[CDATA[ private var _htmlText:String; public var oWidth:int; public var oHeight:int; public function set htmlText(value:String):void { fckEditor.htmlText=value; this._htmlText=value; } public function get htmlText():String { _htmlText=fckEditor.htmlText; return _htmlText; } public function show():void { this.width=this.oWidth; this.height=this.oHeight; fckEditor.width=this.oWidth; fckEditor.height=this.oHeight; fckEditor.visible=true; } public function hide():void { this.width=0; this.height=0; fckEditor.width=0; fckEditor.height=0; fckEditor.visible=false; } ]]--> </mx:Script> <fck:FCKEditor width="100%" height="100%" id="fckEditor"/></BaseSimpleCanvas>
程序效果图:
如果有对这个有兴趣朋友可以交流一下