On click veya diğer event lerdeki kontrollerde TComponent(Sender).Name
ve / veya benzeri kodlar kullanarak gerek üzerinde bulunduğumuz nesneyi belirleyebiliyoruz. Veya bunun üzerinde işlem yapabiliyoruz.
Benim öğrenmek istediğim parametrik olarak bir nesneye ulaşabiliyor muyuz??
Örnek : Component >>> Panel1 den hareket ederek ..........
I := 0;
ATEXT := TComponent(Sender).Name;
I := StrtoInt(Copy(ATEXT,6,2));
Test := 'M' + InttoStr(I);
BTEXT := TLabel(TEST).Caption ; // Bu koda derleme hatası vermiyor fakat çalışma anında access violation hatası veriyor.
>>> Ulaşılmak istenen; M1 Label ın font, caption vs özellikleri ..
Kolay gelsin....
Pgm içerisindeki nesneleri parametrik olarak kullanabilme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Kod: Tümünü seç
BTEXT := TLabel(TEST).Caption ;
kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
S.A.
findcomponent
sanırım senin işini görecek bir şey.
kabaca şöyle olması lazım
diğer örnekleri bi incele.
Kolay gelsin.

sanırım senin işini görecek bir şey.
kabaca şöyle olması lazım
Kod: Tümünü seç
BTEXT := TLabel(findcomponen(TEST)).Caption ;
Kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Selam
yazımına ara verdiğim okey programımdan bir bölüm. componentleri değişken bir şekilde seçip özelliklerine müdahale edebiliyorsun.
iyi çalışmalar.
öncelikle değişken tanımlarını yapın.
componentin numarasını bulup değişkene akatarması için bu function'u yazın
ıstakadaki 30 tane taşı temsil eden image nesnelerinin içieriğini temizleyen kod.
yazımına ara verdiğim okey programımdan bir bölüm. componentleri değişken bir şekilde seçip özelliklerine müdahale edebiliyorsun.
iyi çalışmalar.
öncelikle değişken tanımlarını yapın.
Kod: Tümünü seç
var
c: TComponent;
i:integer;
Kod: Tümünü seç
function GetComponent(AParent: TComponent; Name: string): TComponent;
var
n: integer;
begin
Result:=nil;
if AParent.ComponentCount=0 then Exit;
for n:=0 to AParent.ComponentCount-1 do
if CompareStr(AParent.Components[n].Name,Name)=0 then
Result:=AParent.Components[n];
end;
Kod: Tümünü seç
procedure tform1.istaka_temizle;
begin
for i:=1 to 30 do begin
c:=GetComponent(Self,'istaka_tasi'+inttostr(i));
Timage(c).picture:=nil;
Timage(c).Tag:=0;
Timage(c).Update;
end;
end;
Öğrenmek ve öğretmek, akıntıya karşı yüzmek gibidir ilerleyemediğiniz taktirde gerilersiniz.