Копирование текста текстовой области Spark в другую текстовую область Spark

#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, содержащими три разных элемента (кнопка, текстовая область и изображение). Спасибо за всю поддержку.