Flex - 如何显示可滚动文本并捕获单击/焦点事件以允许添加新文本?

Posted

技术标签:

【中文标题】Flex - 如何显示可滚动文本并捕获单击/焦点事件以允许添加新文本?【英文标题】:Flex - how to display scroll-able text and capture a click/focus event to allow new text to be added? 【发布时间】:2012-08-21 08:21:21 【问题描述】:

在 flex (flash builder 4.6) 中,我有一个 s:TextArea 框,我已将其设置为 editable="false"。这允许我向用户显示文本,并且文本框是可滚动的(但他们无法编辑现有文本)。

我在表单中添加了一个按钮,该按钮弹出一个简单的自定义组件,允许用户输入一些文本,然后通过捕获自定义事件,我将该文本添加到我的 TextArea。

这可行,但我也希望用户能够单击实际文本区域以弹出我的自定义文本输入对话框。

我尝试添加一个 FocusIn 事件处理程序。这可行,但问题是我在修改文本时似乎也会抛出 FocusIn。因此,当用户单击时,我的对话框会打开,但是当他们单击关闭我的对话框时,它会立即弹回打开...

所以,我想我需要一些方法来知道这是否实际上是在文本区域上单击鼠标,或者可能有不同的方法?

【问题讨论】:

为什么不只监听 textarea 上的点击事件? 【参考方案1】:

好的,RIAstar 是正确的 - 我发誓我尝试了 click 事件,但它没有正常工作,但我又试了一次,它似乎工作得很好。谢谢!

【讨论】:

以上是关于Flex - 如何显示可滚动文本并捕获单击/焦点事件以允许添加新文本?的主要内容,如果未能解决你的问题,请参考以下文章

当焦点和键盘隐藏文本字段时滚动到文本字段

如何在 Flex actionscript 中确认文本输入

即使焦点在其他对话框上,我们如何才能使 Cedit 控件文本突出显示?

如何滚动 Firemonkey TListBox 而不在其控件中捕获焦点?

键盘焦点在 ActionScript 中的文本框上

TextView滚动如何实现