Edit + Label

0

Witam,

Mam na formie kilka komponentow typu Edit (Edit1, Edit2, ... Edit10) oraz Label1. W jaki sposob dodac okreslony text (np. 'Delphi') do odpowiedniego Edita, ktorego numer znajduje sie w Label1.caption? Przyklad: Jesli w Label1.caption jest '4', to chce aby napis 'Delphi' pojawil sie w Edit4. Z gory THX za pomoc :).

Greetz--_____
de4th

0

Zajrzyj do postu 'Label', autor 'Lamer', 09.03.2002 11:09
--Pawel

Delphi6

0

Moze to ci pomoze:
W sekcji public formularza:

Komp:TComponent;
function Komponent(Nazwa:string):TComponent;

w sekcji implementation modulu:

function TForm1.Komponent(Nazwa:string):TComponent;
var
I:Integer;
begin
for I:=0 to ComponentCount-1 do
if Components[I].Name=Nazwa then begin
Result:=Components[I];
Komp:=Components[I];
end;
end;

przyklad wykorzystania przy wcisnieciu przycisku:

procedure TForm1.Button1Click(Sender: TObject);
var
S,T:String;
begin
T:='Delphi';
S:='Edit'+Label1.Caption;
TEdit(Komponent(S)).Text:=T;
end;

Na podstawie zawartosci Labela tworzony jest lancuch z nazwa
odpowiedniego Edita i za pomoca funkcji Komponent zmieniany
jest jego Text.
Musisz jednak uwazac zeby jak masz na formularzu 5 Editow nie wpisywac
czegos do np. 25 bo ci bledzik wyskoczy ;-)
Mam nadzieje ze o to chodzilo. Nie sprawdzalem tego dokladnie ale przy odwrotnej sytuacji (tzn.
5 labeli i ich nazwe pobieralo z 1 edita) dzialalo.
Korzystalem z faq Michała Ogłódka.
--Pozdrawiam
Ojciec

1 użytkowników online, w tym zalogowanych: 0, gości: 1