用文本打开dfm文件后.显示caption为#19978#28023类型,怎么把这些显示为汉字啊?

解决方案 »

  1.   

    用Delphi编辑器打开,右键点击窗体,选择“View as text”功能
      

  2.   

    我知道Delphi编辑器打开,右键点击窗体可以显示出来,但不要这样弄,前提是没有Delphi编辑器.
      

  3.   

    不能用Delphi编辑器,这是IQ题吗?打开QQ,按着Alt键,在聊天对话框里用小键盘输入数字,中文就出来啦^_^
      

  4.   

    理论上来说,没有什么实现不了的。刚写了个小函数来实现转换类似#19978的字符串为汉字:function CrnTransDfmChar(strCaption: String): String;
    var
        strRet: String;
        ss: TStringStream;
        ms: TMemoryStream;
        cmp: TComponent;
    begin
        RegisterClass(TButton);    strRet := '  object btnCrnTest: TButton' + #13#10
            + '    Left = 64' + #13#10
            + '    Top = 112' + #13#10
            + '    Width = 75' + #13#10
            + '    Height = 25' + #13#10
            + '    Caption = ' + strCaption + #13#10
            + '    TabOrder = 2' + #13#10
            + '  end';    ss := TStringStream.Create(strRet);
        try
            ms := TMemoryStream.Create;
            try
                ObjectTextToBinary(ss, ms);
                ms.Seek(0, soFromBeginning);
                cmp := ms.ReadComponent(nil);
            finally
                ms.Free;
            end;
        finally
            ss.Free;
        end;
        if cmp <> nil then
            Result := (cmp as TButton).Caption
        else
            Result := '';
    end;// 挖卡卡,现在试验一下
    procedure TForm1.Button1Click(Sender: TObject);
    begin
        ShowMessage(CrnTransDfmChar('#19978#28023'));
    end;运行后可以看到,原来#19978#28023就是“上海”,呵呵。
      

  5.   

    ccrun(老妖)(www.ccrun.com)
    佩服!