Bonjour à Tous![]()
Dans un premier temps, je tente de détecter le premier chiffre entré dans un Edit... :
Je ne demande qu'à comprendre pour quelle raison cette méthode fonctionne impec dans une procédure "standard", mais pas en KeyPress ni en OnChange.
Exemple qui plante direct en KeyPress :
(Je pense avoir - depuis le temps - compris que ça plante car le contenu de la variable est vide... mais pourquoi donc en KeyPress ?)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 procedure Edit2KeyPress(Sender: TObject; var Key: Char); var stt:string; // variable pour virer les zeros avant le point decimal... begin stt := Edit2.Text; // variable chargée Label_Zero.Caption := stt[1]; // 1ere lettre dans ce Label end;
Exemple qui ne plante pas, mais lors de l'appui sur la touche, l'affichage ne survient que lors de l'appui sur la seconde touche, snifff !
En fait, ce que je recherche, c'est la méthode de comment faire pour virer les zéros non significatifs à gauche du DecimalSeparator.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3... Label_Zero.Caption := stt; // remarquez, j'ai viré le ==> [1] ...
Si ce n'était que de virer les zéros à la volée, cela aurait été trop facile.
J'ajoute que pour ce cas précis, je ne souhaite pas utilser un Edit qui formate "tout seul" style CurrencyEdit.
Merci de vos remarques et idées.![]()
Partager