【问题标题】:Delphi 10 Seattle - Enter gives more than entercodeDelphi 10 Seattle - Enter 提供的不仅仅是 entercode
【发布时间】:2017-04-24 17:29:09
【问题描述】:

我对 Delphi 10 Seattle 很陌生,突然每次按 ENTER 时我都会收到一些额外的文本。这很烦人...

任何人都知道为什么会发生这种情况以及我如何才能回到普通的 ENTER-code?​​p>

当按 ENTER 时,会导致换行和换行

  until ;

我不知道我做了什么来得到额外的文本until ;

【问题讨论】:

  • 可能是IDE问题。
  • 彼得,你的英语很好。缺少的是触发问题的上下文代码。在上面的某个地方,您有一个 repeat...until IDE 的解析器无法将其识别为已关闭。这是这个问题的关键部分。请edit您的问题包括它。我是否可以建议您也将 Rudy 的答案标记为已接受。

标签: delphi ide code-completion delphi-10-seattle


【解决方案1】:

这看起来像(自动)块完成(或 IDE 提供的其他完成之一)。我假设你的代码中某处有一个repeat,并且repeat 块没有用until 正确关闭,所以块完成尝试以某种方式关闭它,每次你的按回车键。

要么正确完成你的代码,要么关闭块完成,例如从主菜单:

工具 -> 选项 -> 编辑器选项 -> 代码洞察 -> [ ] 块完成

FWIW,我个人总是把它打开,即使有时它可能会令人讨厌,因为它会在我犯了错字或类似错误时向我显示,而且它通常会消除我必须输入的一些打字否则就这样做。

【讨论】:

  • 感谢您的回答。你可能是对的。我尝试在我所做的最后更改之上使用 enter 并且它没有在那里发生,但是当我在最后一个文本中输入一个输入代码时,它给出了额外的“直到;”我正在尝试使用并行编码,所以我必须调查。奇怪的是它在运行时没有出错......非常感谢您的回答! /彼得
  • 我已删除所有 REPEAT 并改用 WHILE 并解决了问题。再次感谢! //彼得
  • @PeterF 值得注意的是,IDE 和编译器不使用相同的引擎来解析代码。 (这一事实在过去报告的其他 IDE 特性中很明显。)因此,对于您正在使用的特定模式,IDE 引擎中可能存在错误。我建议您提炼一个最小且完整的示例;并在Quality Portal 报告
  • 谢谢克雷格。我已将 Embarcadero 质量门户中的错误报告为“Delphi 10 Seattle - 在并行函数中使用 REPEAT 时的 IDE 错误”,并希望他们会关注它。 (希望是对的地方)。
  • @PeterF:我怀疑它仅与repeat 有关。您现在使用的是while,这没有问题,因为没有while...endwhile 块。但是您也可以在未关闭的begin 块上获得end;。或者finallytry 之后,类似的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多