Component adını string olarak belirtme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Kullanıcı avatarı
DarkEternal
Üye
Mesajlar: 158
Kayıt: 19 Eki 2005 11:00

Mesaj gönderen DarkEternal »

Bir sorum daha olucak :) Bu şekilde oluşturduğumuz componentleri kapanışta fln free etmemiz gerekir mi?
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Eğer Create ederken owner parametresi nil olsaydı evet ama component'lerin bir özelliği, bir bileşen yok edilirken onun altında oluşturulan diğer bileşenler otomatik olarak yok edilirler. Bu yüzden senin yok etmene gerek kalmaz. Tıpkı klasör gibi. Bir klasör silinince onun altında oluşmuş diğer klasörler kendiliğinden silinecektir.(TEdit.Create(Self)-> Self o formu temsil eder ve form yok edilirken içindeki bileşenlerde VCL tarafından otomatik olarak yok edilir. Bu TComponent bileşeninin tasarımı gereği böyledir.) Ayrıca örneğinde bulunan

Kod: Tümünü seç

TEdit.Create(Self).Name := NamePrefix + IntToStr(i);
    with TEdit(FindComponent(NamePrefix + IntToStr(i))) do
    begin
      Left := 10; 
satırları yerine

Kod: Tümünü seç

with TEdit.Create(Self) do
    begin
      Name:=Name := NamePrefix + IntToStr(i);
      Left := 10; 
şeklinde kod yazarsan daha verimli hale getirirsin. Aralarında işlev olarak fark yoktur ama ben olsam 2. tekniği kullanırım. Kolay gelsin.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
DarkEternal
Üye
Mesajlar: 158
Kayıt: 19 Eki 2005 11:00

Mesaj gönderen DarkEternal »

Çok teşekkürler, çok yararlı oldu bu anlattıkların...
Cevapla