在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/