将 Spark TextArea 文本复制到另一个 Spark TextArea
Posted
技术标签:
【中文标题】将 Spark TextArea 文本复制到另一个 Spark TextArea【英文标题】:Copy Spark TextArea Text to another Spark TextArea 【发布时间】:2014-08-22 03:57:21 【问题描述】:我们如何在保留格式的同时将一个 spark TextArea 复制到另一个 spark textarea。我可以检索文本,但如何保持格式。
我想要实现的是我有两个 spark 文本区域,用户在 1 中输入样式,例如(粗体、斜体、下划线)。现在,当用户单击一些其他键(如 Ctrl+J)或其他一些键时,我希望源 TextArea 中的文本到另一个文本区域,同时保持应用格式。
在此先感谢您的帮助。
【问题讨论】:
嗨,Anton 确实像我提到的那样工作,但我有某种情况,我的目标文本区域是 Datagrid 中的内联 itemrenderer。我尝试通过以下方式实现它: 1. 为对象分配一个值 obj.value = editor.textFlow.deepCopy() as TextFlow; test.textFlow = obj.value; dataCollection.addItem(obj);
2. 在itemrendere中使用obj.value <griditemeditor><textarea width="100%" height="100%" bordervisible="false" color="#000000" textflow=" data.value"></textarea>'</griditemeditor>
我得到的只是 datagrid 列中的 Object TextFlow,任何指针
【参考方案1】:
试试这样的
var tff:TextFlow = textArea1.textFlow.deepCopy() as TextFlow;
textArea2.textFlow = tff;
【讨论】:
【参考方案2】:如果您的目标文本区域是 Datagrid 中的内联 itemrenderer,您可以使用
var tff:TextFlow = textArea1.textFlow.deepCopy() as TextFlow;
var obj:Object = ;
obj.textFlow = tff;
dataGrid.dataProvider = new ArrayCollection([obj]);
<s:DataGrid id="dataGrid" x="500" >
<s:itemRenderer>
<fx:Component>
<s:GridItemRenderer>
<s:TextArea id="textArea2"
textFlow="data.textFlow"
/>
</s:GridItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:DataGrid>
【讨论】:
试过了,但没用。请参阅原始问题的 cmets。抱歉,不确定如何在此处尝试编码格式,但似乎可行。 PS:这里可以再补充一个小问题,我们如何从 textarea 中获取 htmlText 或带有样式标签的文本。 TextConverter.export(editor.textFlow,TextConverter.TEXT_FIELD_HTML_FORMAT,ConversionType.STRING_TYPE).toString() 给我你的代码并解释一下到底是什么不工作 实际上我放弃了使用 Datagrid 的想法,而是使用了一个动态添加的包含三个不同元素(按钮、文本区域和图像)的 HGroup 的 VGroup。感谢大家的支持。以上是关于将 Spark TextArea 文本复制到另一个 Spark TextArea的主要内容,如果未能解决你的问题,请参考以下文章
Flex spark TextArea 限制复制/粘贴时的最大字符数
Flex ApplyFormatOperation 中断 Spark TextArea 中的撤消/重做