StringList - como criar um stringlist multidimensional e ordenar os registros da lista |
Top Previous Next |
|
// Veja como criar um stringlist multidimensional e ordenar os registros da lista
Type TRegistro = Class Nome : String; Telefone : String; Cidade : String; End;
//============================================================================== // Adiciona um registro ao String List //============================================================================== Procedure AddRecord(Lista:TStringList; strNome, strTelefone, strCidade:String); Var RecNum : Integer; Begin Lista.AddObject(strNome,TRegistro.Create); RecNum := Lista.Count-1; With TRegistro(Lista.Objects[RecNum]) do Begin Nome := strNome; Telefone := strTelefone; Cidade := strCidade; End; End;
procedure TForm1.Button1Click(Sender: TObject); var Lista : TStringList; x : integer; begin Lista := TStringList.Create;
// Adiciona 7 registros à lista AddRecord(Lista,'Joao','1','Belo Horizonte'); AddRecord(Lista,'Ana','2','São Paulo'); AddRecord(Lista,'Iris','3','Rio de Janeiro'); AddRecord(Lista,'Zilda','4','Curitiba'); AddRecord(Lista,'Bety','5','Salvador'); AddRecord(Lista,'Silva','6','Osasco'); AddRecord(Lista,'Marcia','7','Niteroi'); Lista.Sorted := True;
// Mostra os dados num TMemo For x := 0 to Lista.Count-1 do Begin Memo1.Lines.Add ( TRegistro(Lista.Objects[x]).Nome + ' ' +TRegistro(Lista.Objects[x]).Telefone+ ' ' +TRegistro(Lista.Objects[x]).Cidade ); End;
// Destroi os objetos de cada registro For x := 0 to Lista.Count-1 do Begin Lista.Objects[x].Destroy; End;
// Destroi a lista Lista.Free; end; |