不通过Delphi/BCB查看.dfm文件中的界面组件的中文

问题现象

由于购买的Delphi份数不足以在每个Java开发人员机器上装一份。
在将老的Delphi项目迁移到Java/web项目时,代码逻辑只能通过查看.pas源代码文件。

但是界面相关的组件,从执行界面上是看不到组件名称的。
如果组件命名不是很好猜,就难以对应代码中的组件名称和界面元素关系。

如下图(仅仅是例子):
不通过Delphi/BCB查看.dfm文件中的界面组件的中文

这时可以通过查看.dfm文件确定组件名称与界面元素的关系(假设是英文)。

  object Label1: TLabel
    Left = 14
    Top = 71
    Width = 65
    Height = 17
    Caption = 'FTP Address'
  end

但是如果组件界面显示是中文则看到的是如下:
就无法对应“Label1”就是界面显示的“FTP地址
特别是多个项目并列的时候,连猜都不太容易。

  object Label1: TLabel
    Left = 14
    Top = 71
    Width = 65
    Height = 17
    Caption = 'FTP'#22320#22336#65306
  end

解决办法

1组件原始代码

.dfm内原始代码如下(举例):

  object Label1: TLabel
    Left = 14
    Top = 71
    Width = 65
    Height = 17
    Caption = 'FTP'#22320#22336#65306
  end
  object Label2: TLabel
    Left = 14
    Top = 103
    Width = 65
    Height = 17
    Caption = 'FTP'#31471#21475#65306
  end
  object Label3: TLabel
    Left = 14
    Top = 135
    Width = 65
    Height = 17
    Caption = 'FTP'#30446#24405#65306
  end
  object Label4: TLabel
    Left = 14
    Top = 169
    Width = 79
    Height = 17
    Caption = 'FTP'#29992#25143#21517#65306
  end

2替换和保存为HTML

将#替换为&#。
将’替换为空。
将end替换为<br>。
再保存为.html。

  object Label1: TLabel
    Left = 14
    Top = 71
    Width = 65
    Height = 17
    Caption = FTP&#22320&#22336&#65306
  <br>
  object Label2: TLabel
    Left = 14
    Top = 103
    Width = 65
    Height = 17
    Caption = FTP&#31471&#21475&#65306
  <br>
  object Label3: TLabel
    Left = 14
    Top = 135
    Width = 65
    Height = 17
    Caption = FTP&#30446&#24405&#65306
  <br>
  object Label4: TLabel
    Left = 14
    Top = 169
    Width = 79
    Height = 17
    Caption = FTP&#29992&#25143&#21517&#65306
  <br>

3用浏览器打开

就可以看到组件名称和界面显示内容的对应了。
不通过Delphi/BCB查看.dfm文件中的界面组件的中文