delphi - Control + Click功能在Delphi XE中不起作用

标签 delphi delphi-xe delphi-ide

在Delphi 7中,每当我按住Control键并单击某个函数/过程时,便会将我带到该函数/过程。但是它不能在Delphi XE中使用-至少不能使用所有功能。我在ExtUtils.pas中有一个名为Associate的函数
该函数已正确编译,因此编译器可以找到ExtUtils.pas(当然,ExtUtils已添加到Uses子句中,并且其文件夹已添加到“库路径”中)。但是,当我按住Control键并单击函数或单元名称时,并没有带我到那里。

有任何解决这个问题的方法吗?

UPDATE1:
同样,按住Control键并单击函数(在当前单位中进行声明)不会将光标移动到声明该函数的INTERFACE部分中。

UPDATE2:
我将ExtUtils单元暂时放置在项目的文件夹中,现在可以使用了。因此,Control + Click本身就可以工作,但是即使IDE的文件夹位于Library Path和Browsing Path中,IDE仍很难找到它。

相似的报告:
http://webcache.googleusercontent.com
http://webcache.googleusercontent.com
http://cc.embarcadero.com/Item/28269
一份报告就在这里(请参阅下面的答案)

新测试:
我已经完全卸载了Delphi(并手动删除了文件和注册表剩余的文件)。然后重新安装。除了CodeSite,没有安装其他工具,甚至没有安装数据库。然后,我创建了一个新项目。它包含一个按钮。当我单击该按钮时,它将运行TestMe过程,该过程在名为TestUnit.Pas的外部PAS文件中定义。我在“库路径”和“浏览路径”中将该路径添加到了该库中。但是Control +单击TestMe的过程仍然无法正常工作!如果将鼠标悬停在TestMe过程上,弹出窗口将显示“在TestUnit中声明”,其中“TestUnit”一词是蓝色链接。如果单击它,我会听到Windows系统的声音,但IDE不会将我带到那里(到达设备)。

TestMe过程是这样的:

procedure TestMe;
begin
  Beep(800, 500);
end;

如果我按住Control键并单击“哔声”过程,它将带我进入Windows.pas。因此,这是可行的。
如果您打算进行其他测试,请告诉我。

更新:
现在就可以了!没有任何明显的原因!我只是打开和关闭并编译了项目。但是除了以下两个方面,我没有对Delphi进行任何更改:自动保存选项->编辑器文件和项目选项。

更新:
这不可能!!!
因此,现在当我控制并单击TestMe过程时,可以访问TestUnit.pas文件。
因此,我将原始PAS文件(ExtUtils.pas)移到了TestUnit.pas所在的同一文件夹中,该文件在我的初始测试中(不想重新安装Delphi)无法使用。猜猜是什么:我可以(通过Control +单击)打开TestUnit.pas,但不能打开ExtUtils.pas !!!
德尔福的举止如此古怪而又不一致!

更新:
我编辑了ExtUtils.pas,现在无法打开AGAIN TestUnit.pas。
肯·怀特(Ken White)不会让我说Delphi可能有bug。因此,我不能将“bug”与“Delphi”一起使用。有人可以帮我把这些话放在一起吗?

更新:
我完全删除了对ExtUtils.pas的任何引用-因此我将项目还原到可以正常工作的位置(使用TestUnit)。但是现在该错误仍然存​​在。即使在与TestUnit一起使用之前几秒钟,现在也无法再次使用。

更新:
现在,我意识到了一件重要的事情:在我的源代码中(在测试项目中),我只有一行可编译代码:
procedure TForm1.Button1Click(Sender: TObject);
begin
 TestMe;
end;

该代码不会出现蓝点-因为它不会被编译。在程序运行的那几分钟内,我看到了蓝点。
我还排除了“自动保存选项->编辑器文件和项目选项”作为此问题的可能原因。

更新:
我找到了一种解决问题的方法……几分钟了:我将项目和库移到了另一个文件夹中(任何位置都可以)。按住Control的同时单击将工作一会儿。如果我将文件放回原始文件夹,它甚至可以工作。因此,似乎Delphi保留了某些文件的某种缓存。只要缓存被破坏并保留了缓存,control + click就不会起作用。但是,当我移动文件时,它必须重新创建该缓存,这样它才能起作用,直到问题再次出现并存储在缓存中为止。

最佳答案

在这里,我们有5个使用Delphi 2010的开发人员,还有2个也使用XE的开发人员,并且您在按住Ctrl键的同时也遇到了同样的事情。它似乎停止随机工作。我们永远无法找到一种模式或解决方案。因此,我们不时听到隔间发誓...

发生这种情况时,我使用shift-ctrl-F进行搜索。

西尔万

关于delphi - Control + Click功能在Delphi XE中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6255248/

相关文章:

ios - 如何在 Delphi XE2 中访问 iOS 加速度计?

delphi - 返回带有接口(interface)字段的记录的函数

delphi - 使用 HTTP Server 使用 Indy10 加载 ssleay32 异常

delphi - 如何不使用使用它的应用程序每次都重新编译已安装的软件包?

delphi - Delphi 的 Teamcity 插件

delphi - 空缓冲区但 IdTCPClient.IOHandler.InputBufferIsEmpty 为假

arrays - 是否可以从引用中获取(静态/动态)数组的长度?

delphi - 同一应用程序的两个不同版本

delphi - 如何在Delphi中禁用VCL样式

delphi - 我如何使用delphi跟踪IP