Lista de valores

24/02/2005

0

Queria ter uma variavel com um lista de valores.

ex.:

lista:= [´CLIENTE´,´VENDEDOR´,´FUNCIONARIO´,´FORNCEDOR´];

Todos os valores seriam do tipo string.

Para que depois eu faça

[codeif tabela.tipo.asstring in lista then
begin
....


Sistemald

Sistemald

Responder

Posts

24/02/2005

Massuda

Você poderia usar um TStringList para isso.

Adicione as strings usando o método Add.

Para saber se uma determinada string está na lista, use o método IndexOf.

Se sua lista puder ser ordenada alfabeticamente (você não precisa preservar a ordem de inserção, por exemplo), faça a propriedade Sorted = True antes de incluir as strings. Isso diminuirá o tempo gasto pelo método IndexOf.


Responder

24/02/2005

Marcelo Saviski

Bem assim, bem assim como vc quer não dá (com conjuntos)

poderia usar uma StringList

var
StringList: TStringList;


No OnCreate
  StringList := TStringList.Create;



No OnDestroy
  Stringlist.Free;


Adicionana os clientes

  Stringlist.Add(´CLIENTE´);
Stringlist.Add(´VENDEDOR´);
Stringlist.Add(´FUNCIONARIO´);
Stringlist.Add(´FORNCEDOR´);


e o [i:da47427b09][color=green:da47427b09]tabela.tipo.asstring in lista [/color:da47427b09][/i:da47427b09] ficaria como:
if StringList.IndexOf(Tabela.Tipo.AsString) <> -1 then
begin
...


se os tipos não fossem strings, fossem numeros poderia usar conjuntos


Responder

24/02/2005

Sistemald

valeu galera, este recurso ja conhecia, mas se podesse trabalhor como se fosse números seria mais facil.

Valeu pela atenção, vou usar Stringlist.


Responder

24/02/2005

Sistemald

valeu galera, este recurso ja conhecia, mas se podesse trabalhor como se fosse números seria mais facil.

Valeu pela atenção, vou usar Stringlist.


Responder

24/02/2005

Salsa

como assim trabalhar com numeros? vc tah dizendo a posiçao? ueh ... qndo vc vai inserindo vc pode pegar a posiçao dela na lista ou sei la...
ou colocar ex ... Add(1#teste);

e depois usar copy pra pegar oq vc quer.... :P

falowz :P


Responder

24/02/2005

Salsa

como assim trabalhar com numeros? vc tah dizendo a posiçao? ueh ... qndo vc vai inserindo vc pode pegar a posiçao dela na lista ou sei la...
ou colocar ex ... Add(1#teste);

e depois usar copy pra pegar oq vc quer.... :P

falowz :P


Responder

24/02/2005

Andremuller

você poderia ser um pouco mais específico na sua necessidade?


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar