我的应用程序中有一些有条件编译的类。
{$IFDEF SOME_OPTION}
type
TMyClass = class
procedure Foo;
end;
{$ENDIF}
...
{$IFDEF SOME_OPTION}
procedure TMyClass.Foo;
begin
end;
{$ENDIF}
该选项SOME_OPTION在“项目选项” - “Delphi编译器” - “条件定义”和“项目选项” - “资源编译器” - “目录和条件” - “为此项目定义预处理器符号”中定义
当我尝试按Ctrl +单击他们的方法时,没有任何反应,代码导航不想工作。
我使用Delphi 2010.我该如何解决这个问题?
答案 0 :(得分:2)
这是一个错误,它被修复的可能性为零。
/ Warren P
答案 1 :(得分:1)
我认为“项目选项” - “资源编译器”中没有合适的位置......
但在“项目选项” - “ Delphi 编译器” - “条件定义”中。
更新:
我在这里尝试使用Delphi XE,无论是否定义,或者在任何情况下,Ctrl + Click对我来说都不重要。
请注意,我安装了Andreas Hausladen's IDE Fix Pack 4.6.6和DDEv Extension 2.5。
你用它们吗?
更新2:
当处于同一个单元时,它似乎工作,即使未定义SOME_OPTION,但不是从另一个单元调用Foo时。
看起来有效的方法是在项目选项和中正确定义重建应用程序时(在调用Foo的行上看到蓝点)。然后,IDE可以使用编译器在另一个单元中找到功能源。
这就是我现在所能想到的所有帮助。正如已经说过的那样,它不是IDE最好的部分......
答案 2 :(得分:0)
因为您没有很好地定义编译指令而无法正常工作。必须按照使用IDE 部分中的http://docwiki.embarcadero.com/RADStudio/en/Delphi_compiler_directives所述定义指令。一个好的做法是在条件指令改变后重新编译项目。