CTRL +点击不起作用

CTRL +点击不起作用

问题描述:

代码浏览不适用于我的项目。我将搜索路径设置为我正在使用的所有源单元。而且我还删除了.local.identcache文件。我的项目正在编译没有问题。我能做些什么来使ctrl + click工作。CTRL +点击不起作用

感谢

+0

大卫H.的答案是正确的,但你应该通常理解它。在你的单位中有一些复杂的语法不被支持。我们大多数人只是学会不用Ctrl + Click就能生活,因为不容易让它恢复。 – 2011-02-18 20:22:23

一个错误,我知道,当你有哪些宣布创纪录的内嵌类出现的,像这样:

TMyClass = class 
private 
    FData: record 
    MyData: Integer; 
    end; 
end; 

如果你有这样的话,很多的IDE的任何代码代码洞察/完成/任何功能停止工作。这个错误直接回溯到Delphi 6,甚至可能超越。

我有类私有类型声明修复:

TMyClass = class 
private 
    type 
    TData = record 
     MyData: Integer; 
    end; 
private 
    FData: TData; 
end; 

但如果语法不D2007用,那么你需要声明类以外的记录类型。

我发现的另一个因素可能会混淆IDE是如果你使用了很多条件语句($IFDEF等)。

最后,我建议安装Andreas Hausladen的IDEFixPack,它可以改善IDE的行为。

当然,您的问题可能是由其他原因引起的,但是如果您无法使用您的实际代码进行实验,则必须进行一定程度的猜测。

+0

感谢您的回复,但我没有在我的代码中使用这样的声明 – Bharat 2011-02-18 12:51:04

+0

我已经在使用IDEFixPack – Bharat 2011-02-18 13:00:15

按住Ctrl键单击,当您使用条件定义来控制哪些代码被编译容易迷糊:

{$IFDEF DEBUG} 
... 
{$ENDIF} 

通常需要一对夫妇的这些,但有时这些单之一,尤其是在接口部分,足以将Ctrl-Click发送到混乱。

当我看到Ctrl-Click不起作用的另一次是当您使用项目组时,编辑器中的单位不属于项目组当前活动的项目。

我在模块中使用代码浏览时遇到了同样的问题(在Delphi XE3中)。寻找你的源代码,找到像这样的结构:

procedure procName; 
begin 
    if ... then 
    begin 
    ... 
    end else 
end; 

注意最后的“其他”。 编译器理解这段代码,但代码浏览不理解。 需要插入“;”在“else”之后或删除“else”之后。 源代码纠正后,代码浏览器正在工作。