• TObject sinifindaki degisiklikler
  • TObject sinifina yeni eklenen 6 adet metod var.

    
    class function MethodAddress(const Name: string): Pointer; overload;
    function FieldAddress(const Name: string): Pointer; overload;
    class function UnitName: string;
    function Equals(Obj: TObject): Boolean; virtual;
    function GetHashCode: Integer; virtual;
    function ToString: string; virtual;
    

    Bunlardan ilk ikisi olan MethodAddress ve FieldAddress zaten eski delphi surumlerinde de mevcuttu. Delphi 2009 da sadece unicode degisikliginden dolayi String tipinde parametre alan yeni surumleride ilave edilmis o kadar.

    Diger dort metod ise Vcl.net uyumlulugu icin eklenmis. Zira ToString metodunun yaptigi tek sey Classname degerini geri dondurmek.

    
    function TObject.ToString: string;
    begin
    Result := ClassName;
    end;
    

    GetHashCode ve Equals metodlari ise system unitinde su sekilde tanimlanmislar.

    
    function TObject.Equals(Obj: TObject): Boolean;
    begin
    Result := Obj = Self;
    end;
    
    function TObject.GetHashCode: Integer;
    begin
    Result := Integer(Self);
    end;
    

    UnitName metodunu ise ilk gordugumde aklima hemen sinifin tanimlanmis oldugu uniti geri dondurecegi geldi ama yaptigim ufak bir denemede oyle olmadigi gordum.

    
    procedure TForm1.Button2Click(Sender: TObject);
    var
    Grid:TDBGrid;
    begin
    ShowMessage(Grid.UnitName);
    end;
    

    Dugmeye bastigimda acikcasi karsimda TDBGrid sinifinin tanimlanmis oldugu DBGrids unitinin gorunmesini beklerken karsima StdCtrls ifadesi cikinca birazcik sasirdim.

  • TStringBuilder sinifi
  • String bir ifade olustururken attigimiz taklalar bir nebze olsun son buluyor. StringBuilder sinifi ile string olusturmak artik daha kolay olacak. String harici tipteki degiskenleri XtoStr tarzi fonksiyonlar kullanmadan StringBuilder in Append metodu sayesinde kolaylikla ifadeye ekleyebilecegiz. Append metodunun tam 19 degisik tipte tanimlanmis hali mevcut.

    
    procedure TForm1.Button2Click(Sender: TObject);
    var
    StringOlusturucu:TstringBuilder;
    begin
    StringOlusturucu :=TStringBuilder.Create;
    StringOlusturucu.Append(True).Append(' ise').
    Append(' geriye ').Append(1).
    Append(' değerini dönderir');
    ShowMessage(StringOlusturucu.ToString);
    //True ise geriye 1 değerini dönderir.
    FreeAndNil(StringOlusturucu);
    end;
    
  • TEncoding sinifi
  • Unicode desteginden sonra degisik karakter setleri uzerinde bazi islemler yapmak icin kullanabilecegimiz sinif.

  • PNG Destegi
  • IDE artik png destegi icinde olarak geliyor ama test ettigim kadariyle transparan pngleri duzgun gostermekle ilgili bir takim sorunlari mevcut betasinda.
    (ColorDepth ozelliginin cd32Bit yapilmasi gerekiyor , varsayilan degeri cdDeviceDependent)

    Delphi 2007 de ki TImage nesnesine ait Load From penceresinde ki desteklenen formatlar.

    Delphi 2009 da ki TImage nesnesine ait Load From penceresinde ki desteklenen formatlar.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>