Bonjour,
Lors de l'execution de mon programme, je suis parfois soumis à saisir un entier, je voudrais que celui-ci s'affiche dans un memo lors de la saisie.
La saisie se fait pendant l'execution du programme, donc je ne peux utiliser le lines.add.
Voici mon code :
Il n'a aucun effet sur le memo. Maintenant si j'utilise ce code là :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin if (mode_saisie = true) then // On récupère les touches pressées begin // Vérification que les touches pressées sont que des entiers (0 à 9) if (Key in ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']) then begin buffer.ajouter(strtoint(Key)) ; console.SetSelTextBuf(PChar(Key)) ; end ; end ; end;
Soit utiliser @ et non PChar(), alors les touches sont bien affichés mais il rajoute un 'B' après chaque saisie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin if (mode_saisie = true) then // On récupère les touches pressées begin // Vérification que les touches pressées sont que des entiers (0 à 9) if (Key in ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']) then begin buffer.ajouter(strtoint(Key)) ; console.SetSelTextBuf(@Key) ; end ; end ; end;et je ne comprend pas pourquoi...
Une idée ?
Merci.
Partager