我有一个程序单元的Unit1,我想通过代码来表达这个单元的名字为Unit1。

解决方案 »

  1.   

    uses TypInfo;//type
    //  TTempClass = class(TPersistent)
    //  end;procedure TForm1.Button1Click(Sender: TObject);
    begin
    //  Caption := GetTypeData(PTypeInfo(TTempClass.ClassInfo)).UnitName;
      Caption := GetTypeData(ClassInfo).UnitName;
    end;
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      showmessage(GetTypeData(ClassInfo).UnitName);
    end;注意加上 uses TypInfo;
      

  3.   

    我试过了,假设当前的单元名称是unit1,如果当前的sender是一个依附于Form的对象,例如象button1,Edit1等,那么这时候的unit名称并不是当前的单元名称,譬如sender是button1,那么unit名称就变成了Button而不是unit1,请问该如何解决呢?