uidoc.copy无法按预期工作

时间:2016-10-19 19:29:10

标签: lotusscript

这很有效。之后,目标具有源的内容:

Call uidoc.GotoField("source")          
Call uidoc.SelectAll
Call uidoc.Copy                     
Call uidoc.GotoField("target")      
Call uidoc.Paste                    

现在,我想让用户参与进来。他在“来源”中用鼠标标记了两个单词(一个名字)。领域。我的意图是,将此标记文本转移到另一个字段' target'。

Notes文档说uidoc.copy采用在编辑模式下标记的文本。 这是原始文档的摘录:

  

将文档中的当前选择复制到剪贴板。该   当前选择可以是文档上的任何内容,例如文本或   图形。

这不起作用,发生错误。错误消息:只有文本可以粘贴到此类型的字段中:

Call uidoc.Copy                     
Call uidoc.GotoField("target")      
Call uidoc.Paste                    

所有字段都是纯文本。

有没有人有另一个想法来解决这个问题?

2 个答案:

答案 0 :(得分:2)

我发现按钮实际上将焦点改为自身。这就是这种行为的原因。

一种可能的解决方案是使用一个将焦点留在原点的Action。

答案 1 :(得分:0)

那问题在哪里? uidoc.Copy只复制整个文档或没有任何内容(取决于光标位置)。并且"内容"无法粘贴到文本字段中。

但请注意:不要在该上下文中使用复制+粘贴,因为代码也会失败,如果文档例如未处于编辑模式。

使用Backend- Operations然后您将不依赖于正确的焦点/编辑模式:

Call uidoc.Document.ReplaceItemValue( "Target" , uidoc.Document.GetItemValue( "Source" ) )

甚至更短(使用简写符号):

uidoc.Document.Target = uidoc.Document.Source