CTRL +单击无法正常工作

时间:2011-02-18 12:41:22

标签: delphi ide delphi-2007

代码浏览不适用于我的项目。我将搜索路径设置为我正在使用的所有源单元。我还删除了.local.identcache文件。我的项目编译没有问题。我该怎么做才能让ctrl + click工作。

谢谢

3 个答案:

答案 0 :(得分:4)

当你有一个声明内联记录的类时,我发现了一个错误,如下所示:

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中没有该语法,则需要在类外声明记录类型。

如果您使用大量条件语句($IFDEF等),我发现的另一个因素可能会让IDE感到困惑。

最后我建议安装Andreas Hausladen的IDEFixPack,它确实改善了IDE的行为。

当然,您的问题可能是由其他原因引起的,但是如果无法试验您的实际代码,我们就必须在某种程度上进行猜测。

答案 1 :(得分:4)

当您使用条件定义来控制编译的代码时,Ctrl-Click很容易混淆:

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

通常它需要其中的几个,但有时这些中的一个,特别是在界面部分,足以让Ctrl-Click陷入混乱。

另一次,当我看到Ctrl-Click无法工作时,您使用的是项目组,而您在编辑器中拥有的单元不属于项目组中当前处于活动状态的项目。

答案 2 :(得分:0)

我的模块中的代码浏览存在同样的问题(在Delphi XE3中)。查找您的源代码并找到这样的结构:

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

注意持续“其他”。 编译器理解此代码,但代码浏览不会。 需要插入“;”在“else”之后或擦除“else”。 在更正源代码之后,代码浏览器正在运行。