Onkeypress

cs_sidalilo Messages postés 108 Date d'inscription mardi 28 février 2006 Statut Membre Dernière intervention 9 juillet 2013 - 26 déc. 2010 à 16:36
cs_sidalilo Messages postés 108 Date d'inscription mardi 28 février 2006 Statut Membre Dernière intervention 9 juillet 2013 - 29 déc. 2010 à 08:47
je veux exicuter ce code source qui est en delphi en c++:

procedure TFormX.EditKeyPress(Sender: TObject; var Key: char);
begin
if not (Key in ['A'..'Z','a'..'z'] then
Key := #0;
end;

merci

8 réponses

BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
27 déc. 2010 à 11:13
Hello,
ça dépend comment sont gérés tes interactions utilisateurs: MFC? Win32? Qt? autre?

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Rejoignez mon réseau professionnel sur Viadeo
0
cs_sidalilo Messages postés 108 Date d'inscription mardi 28 février 2006 Statut Membre Dernière intervention 9 juillet 2013
27 déc. 2010 à 11:34
bonjour et merci pour votre reponse
je travail sur le systeme XP win 32
je veux juste d'empecher de saisir que les lettres de A à Z en c++ dans un champ text
merci encore
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
27 déc. 2010 à 12:11
Je ne te demandais pas ton OS mais ta librairie graphique
En Win32, par exemple, dans ta winProc (je n'ai pas testé)
//détection de changement de valeur
if(message==WM_COMMAND && HIWORD(wParam)==EN_CHANGE && LOWORD(wParam)==textbox_id) 
{
  //le texte a été modifié
  //vérifier le dernier caractère et le supprimer le cas échéant
}



@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Rejoignez mon réseau professionnel sur Viadeo
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
27 déc. 2010 à 12:14
Si tu veux juste pouvoir saisir des chiffres, tu peux appliquer le style ES_NUMBER à ton Edit

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Rejoignez mon réseau professionnel sur Viadeo
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_sidalilo Messages postés 108 Date d'inscription mardi 28 février 2006 Statut Membre Dernière intervention 9 juillet 2013
27 déc. 2010 à 14:45
rebonjour
merci
la librairie c win32 et je travail sur c++ builder 6.0
je veux juste mettre en edit par exemple accepte que les lettres
merci encore
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
27 déc. 2010 à 15:00
//détection de changement de valeur
if(message==WM_COMMAND && HIWORD(wParam)==EN_CHANGE && LOWORD(wParam)==textbox_id) 
{
  //le texte a été modifié
  //vérifier le dernier caractère et le supprimer le cas échéant

  // récupération du dernier caractère, dans c
  // à faire

  if (c<'A' || (c>'Z' && c<'a') || c>'z'))
  {
    // tu supprimes le dernier caractère
  } 
}


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Rejoignez mon réseau professionnel sur Viadeo
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
27 déc. 2010 à 19:06
Pour vérifier convenablment la saisie, il faut sous classer l'EDIT et traiter au minimum WM_CHAR dans la proc de sous classement.

Un edit ES_NUMBER n'empeche pas le coller de nimporte quoi.

ciao...
BruNews, MVP VC++
0
cs_sidalilo Messages postés 108 Date d'inscription mardi 28 février 2006 Statut Membre Dernière intervention 9 juillet 2013
29 déc. 2010 à 08:47
bonjour
je vous remercie BUNO beaucoup pour votre aide
enfin le problème est résolu
merci bien
0
Rejoignez-nous