J'ai simplifié mon programme de façon à être clair.
Soit :
- une form avec 3 memos (chacun avec 4 lignes données)
- un memo devant recueillir les données d'un des 3 memos choisis grace à un Mainmenu (choix 1, choix2, choix 3)
La bizarrerie qui provient d'une erreur de programmation c'est que
lorsque je fais un choix : exemple ch2 (j'ai choisi le memo2 contenant 4 lignes avec F - ligne 1,
G - ligne 2
H - ligne 3
J - ligne 4
je n'obtiens QUE l'écriture des 2 premières lignes (de memo2) dans le memo4 qui recueille les données de memo2 choisi. Soit : F et G . C'est tout !
Idem pour le même essai avec memo1 ou memo 3 ... je n'ai que les 2 premières lignes !
D'où vient mon erreur ?
********************* Merci d'avance !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 procedure traite (num :integer); var j : integer; begin If Form1.Components[num] IS Tmemo then for j:=0 to 3 do // parcours les 4 lignes du memo choisi Form1.Memo4.Lines[j]:=(form1.Components[num] as Tmemo).Lines[j] ; end; // choix des memos (dans le mainmenu1) procedure TForm1.ch1Click(Sender: TObject); begin num_etal:=1; traite (num_etal-1); end; procedure TForm1.ch2Click(Sender: TObject); begin num_etal:=2; traite (num_etal-1); end; procedure TForm1.ch3Click(Sender: TObject); begin num_etal:=3; traite (num_etal-1); end;
Partager