#apache-flex #actionscript #textarea #flex-spark
#apache-flex #actionscript #текстовая область #flex-spark
Вопрос:
Как мы можем скопировать одну текстовую область spark в другую текстовую область spark, сохранив форматирование. Я могу извлечь текст, но как я могу сохранить формат.
Чего я пытаюсь добиться, так это того, что у меня есть две текстовые области spark, которые пользователи вводят в 1 с такими стилями, как (жирный шрифт, курсив, подчеркивание). Теперь, когда пользователь нажимает некоторые дополнительные клавиши, такие как Ctrl J или некоторые другие клавиши, я хочу, чтобы текст из исходной текстовой области был перенесен в другую текстовую область, сохраняя примененное форматирование.
Заранее спасибо за помощь в этом.
Комментарии:
1. Привет, Антон, действительно сработало, как я упоминал, но у меня есть определенная ситуация, моя текстовая область назначения — это встроенный itemrenderer в Datagrid. Я попытался добиться этого следующим образом: 1. Присвоите объекту значение <code> obj.value = editor.TextFlow.deepCopy() как TextFlow; test.TextFlow = obj.value; DataCollection.addItem(obj); </code> 2. используйте obj.value в itemrendere <code><s:GridItemEditor> <s:TextArea width=»100%» height=»100%» borderVisible=» false» color=»#000000″ TextFlow=»{data.value}» > </s: Текстовая область>'</s: Редактор сетки></code> Все, что я получаю, это текстовый поток объекта в столбце datagrid, любые указатели
Ответ №1:
Попробуйте что-то вроде этого
var tff:TextFlow = textArea1.textFlow.deepCopy() as TextFlow;
textArea2.textFlow = tff;
Ответ №2:
Если ваша целевая текстовая область является встроенным средством отображения элементов в сетке данных, вы можете использовать
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" width="1000" height="500">
<s:itemRenderer>
<fx:Component>
<s:GridItemRenderer>
<s:TextArea id="textArea2"
textFlow="{data.textFlow}"
/>
</s:GridItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:DataGrid>
Комментарии:
1. Пробовал, но не работает. Пожалуйста, смотрите комментарии к исходному вопросу. Извините, не уверен, как здесь форматировать код, но, похоже, dosent работает.
2. PS: Могу добавить еще один небольшой вопрос, как мы можем получить htmlтекст или текст с тегами для стилизации из textarea.
3. TextConverter.export (editor.TextFlow,TextConverter. TEXT_FIELD_HTML_FORMAT, ConversionType. STRING_TYPE).toString()
4. Дайте мне свой код и объясните, что именно не работает, пожалуйста
5. На самом деле я отказался от идеи использовать Datagrid , вместо этого я использовал VGroup с динамически добавляемыми HGroups, содержащими три разных элемента (кнопка, текстовая область и изображение). Спасибо за всю поддержку.