Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 9 odgovora
  • 3.658 pregleda

Najnovija ↓

Name objekta u TStrings i pristup do njega 31.10.2005. u 15:13 · pre 255 meseci #1
Imam recimo Edit boksove:

Trajko
Muso
Djuro

Imam Podatke array od TStrings gde
Strings[1] ="Trajko"
Strings[2]="Ovo je tekst koji treba da stoi u Trajko.text"

Kako da napravim nesto u stilu:

TEdit.(Podatke.Strings[1]).Text = Podatke.Strings[2];

Znaci kako da vrednost nekog stringa pretvorim u Name nekog objekta?
Potpis
routing protocols enable routers to route routed protocols!
Re: Name objekta u TStrings i pristup do njega 31.10.2005. u 15:26 · pre 255 meseci #2
Ako sam dobro razumeo :


Code:

var
  EditBox : TEdit;
begin
  EditBox := TEdit(FindComponent(Strings[1]));
  If Assigned(EditBox) Then
    EditBox.Text := Strings[2];


Mozes i krace, bez provere da li taj EditBox postoji :

Code:
TEdit(FindComponent(Strings[1])).Text := Strings[2];


poz
Re: Name objekta u TStrings i pristup do njega 31.10.2005. u 16:12 · pre 255 meseci
izmenjeno 1 put, poslednji put sojic 31.10.2005. u 16:15
  1. sojic31.10.2005. u 16:15zapis iz teksta poruke
#3
Danke bite. Najverovatno to je to. Proveriću kasnije. Sad me delphi zeza (zajebo sam neku komponentu)

A dali ovo može da se koristi i za obične stringove. Primer:

Code:

var
    Ime: string;

begin
   Strings[1]:='Ime';
   FindComponent(Strings[1]) := Strings[2];
end;
Potpis
routing protocols enable routers to route routed protocols!
Re: Name objekta u TStrings i pristup do njega 01.11.2005. u 11:31 · pre 255 meseci #5
Nisi shvatio (ili nisam dobro objasnio).

Znači dali mogu FindComponent (ili sličnu funkciju) koristiti za pristup String promenljive, a ne komponente?

Potpis
routing protocols enable routers to route routed protocols!
Re: Name objekta u TStrings i pristup do njega 01.11.2005. u 12:55 · pre 255 meseci #6
Ako sam te dobro razumeo trbalo bi da ti ovo resi problem, ako na formi imas kreirane TEdit-e edTrajko i edMuso.

Code:

procedure TForm1.FillEditBox;
var Objlist:TStrings;
    i:Integer;
begin
 Objlist:=TStringList.Create;
 try
  Objlist.AddObject('Trajkov text',edTrajko);
  Objlist.AddObject('Musov text',edMuso);
  for i:= 0 to Objlist.count-1 do
    TEdit(ObjList.Objects[i]).Text :=ObjList[i];
  finally
   ObjList.Free;
  end;
end;
Potpis
Marcha
-----------------------------------
Pretpostavka je majka zajeba.
Re: Name objekta u TStrings i pristup do njega 01.11.2005. u 13:11 · pre 255 meseci
izmenjeno 1 put, poslednji put sojic 01.11.2005. u 13:13
  1. sojic01.11.2005. u 13:13zapis iz teksta poruke
#7
Uf, nije to. Evo opširnije:

Nemam objekte. Imam string promenljive. I tom string promenljive da dodelim vrednost.

Umesto da imam dva TEdita:

Code:

TEdit(FindComponent('Ime')).Text = 'Neko ime';
TEdit(FindComponent('Prezime')).Text = 'Neko prezime';


hoću da imam dva stringa:
Code:

Ime:='Neko ime';
Prezime:='Neko prezime';


E sad... Kako da string promenljive "Ime" i "Prezime" pristupim na slični način ko u prvom primeru.

Code:

FindComponent('Ime'):='Neko ime';


ili

Code:

FindVariable('Ime'):='Neko ime';


A ovo rešenje mi se sviđa, ali za objekte.
Potpis
routing protocols enable routers to route routed protocols!
Re: Name objekta u TStrings i pristup do njega 01.11.2005. u 14:31 · pre 255 meseci #8
Brate, malo si konfuzan :) , cas hoces objekte cas neces..
Code:

var Objlist:TStrings;
    i:Integer;
begin
 Objlist:=TStringList.Create;
 try
  ObjList.Values['Ime']:='Nikola';
  ObjList.Values['Prezime']:='Marcic';
  ShowMessage(ObjList.Text);//Sadrzaj liste
  ShowMessage(ObjList.ValueFromIndex[0]);//Vraca vrednost za Ime
  ShowMessage(ObjList.Values['Prezime'])//Vraca vrednost za Prezime;
  finally
   ObjList.Free;
  end;
end;
Potpis
Marcha
-----------------------------------
Pretpostavka je majka zajeba.
Re: Name objekta u TStrings i pristup do njega 01.11.2005. u 16:05 · pre 255 meseci #10
U principu trebaju mi objekte, ali kasnije palo mi na pamet šta ako promenljiva nije objekat nego običan string.

Hvala u svakom slučaju.
Potpis
routing protocols enable routers to route routed protocols!
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme