Fórum Procedimento para criar mais variáveis #369010
12/03/2009
0
Tenho precisado de um procedimento que possa fazer criar novas variáveis de uso publico do form. Porém não estou tendo muito sucesso. alguem saberia como faze-lo!?
por exemplo... tenhu uma classe:
TDrF = Class private FNome: String; FLevel: String; public Property Nome: String read FNome write FNome; Property Level: Integer read FLevel write FLevel; end;
No formulário tem um TButton que quando necessário, o evento OnClick do TButton irá criar uma nova variável do tipo TDrF. As variáveis so poderão ser destruídas se solicitadas para serem destruídas ou no fechamento do form.
Alguma idéia aí gente. to seco. :cry:
.lg.
Curtir tópico
+ 0Posts
13/03/2009
Woinch
Mas caso você queira criar variáveis de forma dinâmica, sem declará-las todas antes no fonte, você pode utilizar vetores (arrays). Dê uma lida sobre arrays dinâmicas. Talvez ajude.
Gostei + 0
13/03/2009
.lg.
Vou pegar um livro para ver sobre.
Você entendeu certo. É criar variáveisde forma dinâmica sm declará-las antes no form.
Vou dar uma lida sobre. Qualquer informaçãoa mais é bem vinda. :wink:
Abraços,
.lg.
Gostei + 0
13/03/2009
Woinch
SetLength(NomeArray, Length(NomeArray) +1); //aumenta o tamanho da lista NomeArray[Length(NomeArray) -1] := Objeto; //adiciona objeto na última posição da lista
Para remover você pode fazer o processo contrário.
Caso necessite adicionar ou remover em qualquer posição e não somente no final você precisará além de aumentar o tamanho da lista, mover o conteúdo para a direita para que possa ser inserido outro Objeto no meio. Pode ser feito isso através de um for utilizando a propriedade Length(NomeArray) e um outro Array auxiliar. Se você necessita de ordenação dessa lista, você precisará definir um campo Chave e chamar um método que ordene esse array a partir desse campo.
Qualquer dúvida é só perguntar.
Espero ter ajudado...
Gostei + 0
13/03/2009
.lg.
Agradeço.
[Tópico resolvido]
Att,
.lg.
Gostei + 0
16/03/2009
Rodc
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)