Professional Documents
Culture Documents
Jerfs1
Members
447 posts
PostadoJunho 6, 2008
Consigo criar uma array em tempo de execuo? quero poder criar quantas
arrays forem necessrias enquanto tiver executando o programa, consigo?!
Como?
Rodrigo Miss1
Members
1.270 posts
PostadoJunho 6, 2008
var
Jerfs1
Members
447 posts
PostadoJunho 6, 2008
Rodrigo valeu a ajuda, mas essa rotina que voc me passou est criando
apenas uma matriz no !? Desculpe minha ignorncia mas estou iniciando. O
que eu preciso criar matrizes de acordo com um parametro que
pesquisado atravs de um arquivo TXT. por exemplo, quando o txt tiver 5
grupos, eu terei de criar 5 arrays...
Discorpio1
Members
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 1/9
13/07/2017 Esclarecimento sobre Array - Delphi - Frum iMasters
159 posts
PostadoJunho 6, 2008
Nesse caso o array dinmico pode ser redimensionado a todo instante, e bom
disso tudo que, quando voce o dimensiona pela primeira vez e atribuir
valores aos seus ndices, ao redimension-lo novamente, os dados
anteriormente atribudos no se apagam. Mas como eu redimensiono um
array dinmico ? Com a funo SetLength, assim:
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 2/9
13/07/2017 Esclarecimento sobre Array - Delphi - Frum iMasters
type
TMeuRegistro = Record
Nome: String;
Endereco: String;
...
...
Data_Nasc: TDate;
Cliente_Especial: Boolean;
end;
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
MeuRegistro: array of TMeuRegistro;
I: Integer;
begin
SetLength(MeuRegistro, 10);
for I := 0 to 9 do
begin
MeuRegistro[I].Nome := 'Jerfs';
MeuRegistro[I].Endereco := 'Av.
Paulista.....';
....
.......
.......
MeuRegistro[I].ClienteEspecial := True;
....
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 3/9
13/07/2017 Esclarecimento sobre Array - Delphi - Frum iMasters
end;
SetLength(MeuRegistro, 20);
for I := 10 to 19 do
begin
MeuRegistro[I].Nome := 'Delphi';
.....
.....
end;
end;
Bom, espero que isto sirva para o que voce pretende fazer.
Um abrao
Jerfs1
Members
447 posts
PostadoJunho 6, 2008
Discorpio, muito bom o que escreveu, certamente vou usar muito isso aqui
valeu mesmo! Mas o que preciso no momento : eu tenho um TXT, nele tenho
vrios parametros, atraves desses parametros (que so vriaveis) vou saber
quantas arrays vou precisar, ento ora precisarei de 4 arrays, ora precisarei de
200 arrays, uma coisa que no mudar o tipo de dados, sempre sero string.
Programo em Action Script, e l bem fcil fazer, simplesmente colocamos
dentro de um for os delimitadores e podemos criar quantas arrays forem
necessrias, mas em Delphi eu no tenho nem idia de como fazer isso... uma
outra coisa, depois de eu criar as arrays, para aliment-las, eu consigo
referenciar ao nome da array de forma dinamica?! por exemplo:
Para me referenciar a array grupo1 e inserir um valor na posio 10 dela...
(levar em considerao a array j criada)
CODE
var
i := 1;
Begin
'grupo'+i[10] := 'teste';
End;
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 4/9
13/07/2017 Esclarecimento sobre Array - Delphi - Frum iMasters
Em flash isso possvel, acredito que em delphi deva existir alguma forma de
se fazer isso... enm, no posso setar parametros xos para meu sistema,
preciso torn-lo o mais dinmico possivel, de forma que ele se molde com o
txt de parametros...
Conto com a colaborao de
todos...http://forum.imasters.com.br/public/style_emoticons/default/clap.gif
Jerfs1
Members
447 posts
PostadoJunho 6, 2008
Galera, estou pesquisando que nem um louco para saber se possvel fazer o
que quero... e cheguei a concluso de que o que quero 'criar vriavel em
tempo de execuo', isso possvel?
Discorpio1
Members
159 posts
PostadoJunho 6, 2008
Discorpio1
Members
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 5/9
13/07/2017 Esclarecimento sobre Array - Delphi - Frum iMasters
159 posts
PostadoJunho 6, 2008
type
TMeuRegistro = record
MeuArray: array of string;
end;
TForm1 = class(TForm)
private
{ Private declarations }
Grupo: array of TMeuRegistro;
public
{ Public declarations }
end;
Repare que eu dene o tipo record antes, bem como declarei um array Grupo
no bloco private da classe TForm1 como sendo do tipo do Record denido
como TMeuRegistro, ou seja, bem antes de implement-los.
Agora eu posso dimensionar e redimensionar tantos o Record TMeuRegistro
como o arrays MeuArray que est dentro dele, isto porque ambos so array
dinmicos.
Quando voce receber o parmetro do seu TXT, por exemplo 100 arrays, ento
dimensione a instncia Grupo que um array de TMeuRegistro para 100,
valendo lembrar que ser os ndices numerados de 0 a 99, ora dentro de cada
record no tem um array MeuArray ? Ento voce ter 100 arrays, resta saber
agora a quantidade de ndices que cada array ter, e isto voce pode tambm
dimensionar com a funo SetLength, assim:
var I: Integer;
begin
SetLength(Grupo, 100); // aqui depende da qtd de
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 6/9
13/07/2017 Esclarecimento sobre Array - Delphi - Frum iMasters
end;
Agora voce pode atribuir bem como se referenciar a cada array desta Forma:
Grupo[9].MeuArray[10] := 'Delphi';
Jerfs1
Members
447 posts
PostadoJunho 9, 2008
Discorpio... muuito obrigado! chapou mesmo... deu pra ver que voc manja!
parabns!!! e denovo muito obrigado pela ateno. Deu certinho...
http://forum.imasters.com.br/public/style_emoticons/default/clap.gif
Jerfs1
Members
447 posts
PostadoJunho 9, 2008
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 7/9
13/07/2017 Esclarecimento sobre Array - Delphi - Frum iMasters
Discorpio1
Members
159 posts
PostadoJunho 9, 2008
Jerfs1
Members
447 posts
Ol Discorpio,
Cara z o seguinte, usei um memo como uma matriz temporria... ento eu
crio a tal "matriz" dentro do memo, e depois ento que a matriz estiver pronta
eu gravo em arquivo (esse seria o porque criar as tais matrizes dinmicas).
Isso me atendeu... mas quero agradecer, muito obrigado mesmo pela
disponibilidade! Espero um dia poder fazer o mesmo pelos usurios do frum,
um dia eu chego l! rs
Abrao
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 8/9
13/07/2017 Esclarecimento sobre Array - Delphi - Frum iMasters
https://forum.imasters.com.br/topic/290423-esclarecimento-sobre-array/ 9/9