kod içerisinde özelliklerine erişeceğim componentin adını string olarak belirtebilirmiyiz? Yani şöyle ki;
Kod: Tümünü seç
Edit1.Caption:='Deneme'
Kod: Tümünü seç
('Edit'+inttostr(i)).Caption:='Deneme' //i=1
Teşekkürler, Kolay Gelsin.
Kod: Tümünü seç
Edit1.Caption:='Deneme'
Kod: Tümünü seç
('Edit'+inttostr(i)).Caption:='Deneme' //i=1
Kod: Tümünü seç
for i:=0 to ComponentCount-1 do
begin
if Components[i] is TShape then
begin
if (TShape(Components[i]).Tag > 100) AND (TShape(Components[i]).Tag < 121) then
begin
Tree1[t1] := i;
inc(t1);
end
else....
end;
end;
Kod: Tümünü seç
TEdit(FindComponent('Benim_edit')).Captipn:='cxcdsfds';
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
const
NamePrefix = 'MyEdit';
begin
for i := 1 to 20 dobegin
TEdit.Create(Self).Name := NamePrefix + IntToStr(i);
with TEdit(FindComponent(NamePrefix + IntToStr(i))) do
begin
Left := 10;
Top := i * 20;
Parent := self;
end;
end;
end;
Kod: Tümünü seç
Tree1 : TList;
.....
Tree1 := TList.Create;
for i:=0 to ComponentCount-1 do
begin
if Components[i] is TShape then
begin
if (TShape(Components[i]).Tag > 100) AND (TShape(Components[i]).Tag < 121) then
begin
Tree1.Add(Components[i]);
end
else....
end;
end;
Kod: Tümünü seç
TShape(Tree1.Item[I]).Brush.Color := clRed;
Peki event a kod yazabiliyor muyuz runtime da oluşturulan componente?akgun83 yazdı:kodu ve delphi helptekiKod: Tümünü seç
TEdit(FindComponent('Benim_edit')).Captipn:='cxcdsfds';
örnekleri işimi gördü teşekkürler.Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject); var i: Integer; const NamePrefix = 'MyEdit'; begin for i := 1 to 20 dobegin TEdit.Create(Self).Name := NamePrefix + IntToStr(i); with TEdit(FindComponent(NamePrefix + IntToStr(i))) do begin Left := 10; Top := i * 20; Parent := self; end; end; end;
Kod: Tümünü seç
TForm1=class(TForm)
.
.
Button1Click(Sender: TObject);
.
.
private
procedure GenelEditEnter(Sender:TObject);
pubic
end;
procedure TForm1.GenelEditEnter(Sender:TObject);
begin
if Sender is TEdit then TEdit(Sender).SelectAll;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
const
NamePrefix = 'MyEdit';
begin
for i := 1 to 20 dobegin
TEdit.Create(Self).Name := NamePrefix + IntToStr(i);
with TEdit(FindComponent(NamePrefix + IntToStr(i))) do
begin
Left := 10;
Top := i * 20;
Parent := self;
OnEnter:=GenelEditEnter;//<-bu satır eklendi
end;
end;
end;
Kod: Tümünü seç
TForm1=class(TForm)
.
.
Button1Click(Sender: TObject);
.
.
private
procedure GenelEditEnter(Sender:TObject);
procedure GenelEditKeyPress(Sender: TObject; var Key: Char);
pubic
end;
procedure TForm1.GenelEditEnter(Sender:TObject);
begin
if Sender is TEdit then TEdit(Sender).SelectAll;
end;
procedure TForm1.GenelEditKeyPress(Sender: TObject; var Key: Char);
begin
//burada key değeri elinde zaten...
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
const
NamePrefix = 'MyEdit';
begin
for i := 1 to 20 dobegin
TEdit.Create(Self).Name := NamePrefix + IntToStr(i);
with TEdit(FindComponent(NamePrefix + IntToStr(i))) do
begin
Left := 10;
Top := i * 20;
Parent := self;
OnEnter:=GenelEditEnter;//<-bu satır eklendi
OnKeyPress:=GenelEditKeyPress;//<-bu satır da eklendi
end;
end;
end;