[D2009] Array dynamique dans Array
Bonjour à toutes 8-) et à tous,
J'ai besoin de déclarer différent tableaux constants :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| {$REGION 0}
Const
ListeSortie0 : Array[0..4] of String =
(
'ggggggggggggggERZGFEZRgg',
'gggggggggggZERGZFggggg',
'gggggggggggggRZEGggg',
'gggggggggggZEggggg',
'ggREZFEZRGFERgggggggggggggg'
);
{$ENDREGION 0}
{$REGION 1}
Const
ListeSortie1 : Array[0..0] of String =
('TTTTTTTTTTTTTTTTTTT');
{$ENDREGION 1} |
Ensuite dans une procédure OnClick commune à différent Boutton, j'ai besoin de copier l'un de ces tableaux dans un tableau dynamique Mais cela ne fonctionne pas voilà mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| procedure TFConversion.sBitBtnCommunClick(Sender: TObject);
Var
Path : array[0..MAX_PATH] of Char;
i: Integer;
Liste: array of String;
begin
// Récupération du chemin Mes doc du poste
SHGetSpecialFolderPath(0,Path, CSIDL_PERSONAL,False);
Case TsBitBtn(Sender).Tag of
0:{Log1}
Begin
SetLength(Liste, Length(ListeSortie0));
Liste := Copy(listeSortie0);
EditSortie.Text := IncludeTrailingPathDelimiter(StrPas(Path))+'ECRITURES.TXT';
end;
1:{Log2}
Begin
SetLength(Liste, Length(ListeSortie1));
Liste := Copy(listeSortie1);
EditSortie.Text := IncludeTrailingPathDelimiter(StrPas(Path));
end;
2:{Log3}
Begin
end;
3:{Log4}
Begin
end;
4:{Log5}
Begin
end;
6:{Log6}
Begin
end;
End;
// On mets à jour les choix du profil de sortie
With sComboBoxProfils do
Begin
Items.Clear;
for i := Low(Liste) to High(Liste) do
Items.Add(Liste[i]);
end;
if sComboBoxProfils.Items.Count > 0 then sComboBoxProfils.ItemIndex := 0;
end; |
Mais cela bloque sur la ligne : Liste := Copy(listeSortie0); avec erreur type incompatible.
J"ai également essayer cela
Move(ListeSortie0[0],Liste[0],Length(ListeSortie0));
Mais je ne recopie que la première valeur. Mon but etant d'éviter de passer par une boucle.
Merci de vos lumières.