Après windows pour les nuls, voici PB pour les bons (ou presque).

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 17-08-2010 09:34:13

bombseb  
Membre Geek
Date d'inscription: 06-01-2009
Messages: 40
Pépites: 2,218
Banque: 0

[RESOLU] Empecher la saisie des carcatère majuscules accentués

Bonjour,

J'ai un champs saisissable uniquement en majuscule dans une datawindow, mais j'aimerais également empecher l'utilisateur de saisir des caractères majuscules accentués ex : "É"
Y'a t-il un moyen de le faire en parametrant le champs dans la datawindow ? ou alors dans le code ?

Dernière modification par bombseb (18-08-2010 12:14:47)

Hors ligne

 

#2 17-08-2010 10:00:16

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Empecher la saisie des carcatère majuscules accentués

Bonjour, effectivement quand on met en uppercase et que l'on saisit un "é" il se transforme en "É"...
Je pense que le seul moyen soit de coder dans DW.itemchanged une conversion des majuscules accentuées.


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#3 17-08-2010 10:08:05

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] Empecher la saisie des carcatère majuscules accentués

salut,

     Je ne connais aucun paramètre te permettant d'interdire les charactères accentués.

    Pour gérer celà tu peut intercepter les touches et invalider les charactères qui ne te conviennent pas
    En standart il n'existe pas d'événement sur la dw pour gérer les touches.
    Pour celà sur le control dw tu créés un événement que tu mappes ( EVENT ID)  sur PBM_DWNKEY
    exemple : nom de l'evt : UE_KEY    mappé sur PBM_DWNKEY
    Cet événement seras automatiquement déclenché à chaque touche appuyée par l'utilisateur.
      ( en paramètre tu recois le code de touche et le flag pour savoir si Shift ou CTRL etc )

Hors ligne

 

#4 17-08-2010 10:11:43

bombseb  
Membre Geek
Date d'inscription: 06-01-2009
Messages: 40
Pépites: 2,218
Banque: 0

Re: [RESOLU] Empecher la saisie des carcatère majuscules accentués

Merci pour vos réponses, je vais éssayer de bidouiller un truc alors....

Hors ligne

 

#5 17-08-2010 12:35:56

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2487
Pépites: 88
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Empecher la saisie des carcatère majuscules accentués

Pour contrôler la saisie de ta chaîne de caractères, tu peux utiliser la fonction Match de PB


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#6 18-08-2010 10:05:03

bombseb  
Membre Geek
Date d'inscription: 06-01-2009
Messages: 40
Pépites: 2,218
Banque: 0

Re: [RESOLU] Empecher la saisie des carcatère majuscules accentués

oui c'est ce que j'ai fait

Voici mon code pour ceux que ca interresse :

Code: pb

Integer      li_Index
n_cst_String  lnv_String
String  ls_Caractere[]  = {'À','Á','Â','Ã','Ä','Å','È','É','Ê','Ë','Ì','Í','Î','Ï','Ñ','Ò','Ó','Ô','Õ','Ö','Ù','Ú','Û','Ü','Ý'}
String  ls_Caractere2[] = {'A','A','A','A','A','A','E','E','E','E','I','I','I','I','N','O','O','O','O','O','U','U','U','U','Y'}

FOR li_Index = 1 TO UpperBound (ls_Caractere)
  DO WHILE Match (as_Chaine, ls_Caractere[li_Index])
    as_Chaine = lnv_String.of_GlobalReplace (as_Chaine, ls_Caractere[li_Index], ls_Caractere2[li_Index])
  LOOP
NEXT

RETURN as_Chaine

Dernière modification par bombseb (18-08-2010 12:13:29)

Hors ligne

 

#7 18-08-2010 10:24:44

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Empecher la saisie des carcatère majuscules accentués

Merci de ton retour.

N'oublie pas le [RESOLU] et


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22