0

我有一个使用 WinForms RTB 的 keyDown 事件的处理程序,它具有以下代码:

GetTextAtLoc(RTB->SelectionStart); // selects some text at the caret's position
RTB->SelectedText = "SomeOfMyOwn";
GetTextAtLoc(RTB->SelectionStart); // selects the replacement string
RTB->SelectionStart += RTB->SelectionLength - 1;

虽然此代码似乎完成了它的工作(SelectionStart/Length 属性已正确更新),但插入符号并未移动到新字符串的末尾 - 它表示 GetTextAtLoc 第一次调用时的位置。重绘文本框似乎也没有任何效果。

4

2 回答 2

0

问题似乎已经解决了。不幸的是,不知道是什么导致了这种变化。关闭此线程。

于 2010-04-23T15:15:13.690 回答
-1

您没有指定新长度(因此:1-1=0)。尝试类似:

SelectionStart += (length("SomeOfMyOwn"))

于 2010-04-20T05:51:54.230 回答