Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Delphi - editácia štruktúry DFM pre použitie v TPanel.Controls

Vytvoril som si formulár, v ktorom mám TPanel a v ňom 12x TEdit. Vytvoril som ich postupne, takže aj v samotnom súbore PAS sa nachádzajú poriadne v poradí od ed00 do ed11. Problém nastal vtedy, keď som k TEdit začal pristupovať pomocou TPanel.Controls. Ide o to, že neboli po poradí. Ja som ich totiž po vytvorení presunul z TForm do TPanel. Overil som si to nakoniec v súbore DFM. Vie mi niekto poradiť, ako v Delphi editovať poradie objektov v DFM (čiže pre prístup cez Controls)? Musím to teraz ručne presúvať v editore, lebo inak mi program fungovať správne nebude.

Předmět Autor Datum
A neni to trosku hloupy navrh, kdyz jsi zavisly na vytvorenem poradi komponent ? Co kdyz nekdy za pu…
Jan Fiala 05.06.2006 20:33
Jan Fiala
Tak toto by ma ani nenapadlo. Jednoduché a dokonalé.:-) poslední
msx. 05.06.2006 20:39
msx.

A neni to trosku hloupy navrh, kdyz jsi zavisly na vytvorenem poradi komponent ? Co kdyz nekdy za pul roku s tim neco provedes a pak budes marne hledat, proc to nechodi...

Doporucuji:
jednotlivym editum do property TAG priradit index podle toho tveho poradi
nadefinovat si pole

edity: array[0..11] of TEdit;

jednorazove tam v OnCreate formulare prirad ty sve edity:

for i := 0 to ComponentCount - 1 do
  if Components[i] is TEdit then
    Edity[TEdit(Components[i]).Tag] := TEdit(Components[i]);

Pak budes k editum pristupovat pomoci pole:

Edity[4].Text := 'Ja jsem text v editu 4';

Zpět do poradny Odpovědět na původní otázku Nahoru