如何在不滚动到顶部的情况下查看函数或过程是私有的,受保护的还是公共的

时间:2014-10-13 08:04:38

标签: delphi ide access-modifiers

是否可以知道该功能或程序是私有的,受保护的还是公共的。 现在我必须滚动到顶部以查看方法是否是私有的。 是否有工具或结构(代码资源管理器),以查看方法是私有,受保护或公共whitout滚动到顶部。

示例:

 unit .....
 // 100 line code
 private
 // 1000 line code
   procedure A(); // <-- Here I can't see if the procedure is private. Must scroll to the top
 //  2000 line code 
 ...
 procedure A();  // <-- Here I can't see if the procedure is private. Must scroll to the top
 begin
   ...
 end;

我现在唯一可以设置(私有,保护或公开)它的摘要描述

在Code Explorer中,我看到蓝色表示程序,绿色表示功能,但没有私人,受保护或公共图标。

我更改了探索代码的属性,现在我有私有,受保护或pulic的地图。

但是当我转到代码中的过程时,探索代码中没有像项目管理器视图中那样的选定项目。 探索代码的情况相同。必须向上滚动到地图以查看它是私有的,受保护的还是公共的 一个替代方案是在搜索已探索的代码时编写方法。然后,这是一个提示弹出窗口。

我找到了可能的解决方案:将方法和过去复制到资源管理器代码的搜索框中。组合框列表弹出窗口给了我想要看到的内容(私有,受保护......)

4 个答案:

答案 0 :(得分:5)

使用Structure View显示有关类声明的所有详细信息。

要控制视图的外观,请在Tools > Options > Environment Options > Explorer对话框中定义设置。


<强>更新

如评论中所述,您必须手动导航结构视图以查看类结构。

提交增强请求QC 128271 Structure view lookup from editor,以便于从编辑器快速查找结构视图。

答案 1 :(得分:3)

  

...无需滚动到顶部

使用键盘快捷键 CTRL - SHIFT - UP (或 CTRL - SHIFT - DOWN )跳转到声明。

并使用相同的方法再次跳回到实现。

如果不清楚声明属于哪个部分(私有,受保护或公共),则使用 CTRL - UP 滚动而不移动光标。

答案 2 :(得分:1)

我可以推荐ModelMaker Code Explorer。这不是免费的,但物有所值。它显示了很多信息,并提供了一些非常有用的重构。

答案 3 :(得分:0)

不,你不能。因为Delphi将其类拆分为两个pices接口和实现。

在fx中。 c#你做的不同

public static byte[] ColumnBlob(Sqlite3Statement stmt, int index)
{
    return Sqlite3.sqlite3_column_blob(stmt, index);
}

在Delphi中,你会把课程分散到thw:

type 
   TSQLiteException  = class(TException)
   public
     class function  ColumnBlob(stmt : Sqlite3Statement, index : integer) : TArray<byte>;
   end;

和impelmentation:

function TSQLiteException.ColumnBlob(stmt : Sqlite3Statement, index : integer) : TArray<byte> ;
begin
  //Do stuff
end;

两种方法都有起伏不定:

c#方式你可以看到班级的保护等级而你却看不到你所在的班级

其他方式与Delphi相关