Delphi XE3 Ctrl+Z 也可以撤消插入符号的移动
Posted
技术标签:
【中文标题】Delphi XE3 Ctrl+Z 也可以撤消插入符号的移动【英文标题】:Delphi XE3 Ctrl+Z undo caret movements too 【发布时间】:2013-07-11 07:46:30 【问题描述】:我是 Delphi 新手,发现 Rad Studio XE3 代码编辑器的一些奇怪行为。
例如,当我按下撤消快捷键 (Ctrl+Z
) 时,编辑器不仅撤消最后的代码编辑,还撤消最新的插入符号移动。我的意思是:当我打开一个单元并浏览它的代码时,碰巧我四处点击,而没有编辑代码。好吧,如果我按 Ctrl+Z,插入符号将移回我之前单击的所有点。如果没有执行任何编辑,当我按下 Ctrl+Z
时,我原以为不会发生任何事情!
有没有办法关闭这个功能?
我已经安装了CnWizards_1.0.0.638
。
谢谢。
【问题讨论】:
你是说光标吗?或者你的意思是插入符号?光标是鼠标指针。插入符号是编辑控件中的文本插入点。 @DavidHeffernan 对不起,我的意思是插入符号。我会更新问题。谢谢。 【参考方案1】:在执行撤消编辑操作时移动插入符号非常符合设计。这肯定不是奇怪的行为,并且所有编辑器都以这种方式行事。
如果插入符号没有移动,并且窗口现在滚动,您将绝对没有任何反馈表明发生了撤消事件。例如,您撤消的编辑可能在当前不可见的代码中。可以肯定的是,在普通的 Delphi 中没有办法改变行为,如果有任何插件提供这样的功能,我会感到震惊,因为它会使撤消功能完全无法使用。
也许您想要做的是撤消一些更改,然后在执行撤消操作之前返回到您在编辑窗口中的位置。嗯,实现这一点的方法是删除一个书签,执行撤消,然后跳转到书签。
【讨论】:
对不起,我的问题不是很清楚,我无法解释我的观点。我已经更新了! 嗯,这是一个不同的问题。【参考方案2】:您不能完全禁用该行为,但可以减少其影响。打开group undo editor option。然后所有连续的光标移动将被组合成一个动作。其他类型的连续动作也会被组合在一起,但我不记得这对我来说是个问题。
【讨论】:
谢谢,但“组撤消”复选框已启用。禁用时,我注意到我必须按两次 Ctrl+Z 才能使插入符号移动到以前的位置。以上是关于Delphi XE3 Ctrl+Z 也可以撤消插入符号的移动的主要内容,如果未能解决你的问题,请参考以下文章
Delphi XE3 尝试释放 FSQL (TStringList) 时指针无效