【问题标题】:Rebol 3 - R3-GUI - How to access text from an area?Rebol 3 - R3-GUI - 如何从一个区域访问文本?
【发布时间】:2023-03-04 11:31:02
【问题描述】:

我在 R2 和处理面孔方面遇到了很多困难。 get-facet 对我来说似乎非常不直观。

假设我有一个区域:

view [c: area "hello"] print get-facet c 'text-edit

get-facet 总是返回"hello",即使我在该区域输入了其他内容。这是怎么回事? 'caret'state 构面对象包含正确的文本,但我找不到访问它们的方法。

【问题讨论】:

    标签: rebol rebol3 r3-gui


    【解决方案1】:

    正确的命令是get-face。获取方面应该用于

    对于上面的示例,它是通过以下方式修复的:

    view [c: area "hello"] print get-face c
    

    来自 Cyphre 的解释:get-face 适用于应用程序程序员,但 get-facet 适用于样式开发人员,因为它直接访问样式内部。如果样式更新,如果不使用get-face,它可能会破坏代码。应该避免在面部上使用 /text 或 /data 之类的细化,因为这在 R2 中很容易做到

    AREA 的 facet TEXT-EDIT 看起来只是存储初始化,而 state/caret facet 对象包含运行时数据

    【讨论】:

    • 虽然,我仍然不明白为什么没有一个简单的 get-facet 选项(如果没有的话)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-15
    • 1970-01-01
    相关资源
    最近更新 更多