Accueil > Forum > > > > comment convertir un char en sa valeur code touche?
comment convertir un char en sa valeur code touche?
mardi 22 avril 2008 à 20:56:08 |
comment convertir un char en sa valeur code touche?

mighty_warrior
|
Bonsoir, donc ma question: comment convertir un char en sa valeur code touche? par exemple pour la lettre A on sait que son code touche est 65 mais dans mon programme la lettre est dans un char alors comment récupérer le code touche  merci beaucoup!
|
|
mardi 22 avril 2008 à 21:34:38 |
Re : comment convertir un char en sa valeur code touche?

Caribensila
|
Réponse acceptée !
Salut,
Ord('A')
et l'inverse chr(65).
|
|
mardi 22 avril 2008 à 22:58:57 |
Re : comment convertir un char en sa valeur code touche?

mighty_warrior
|
le probléme est que si je fait ord('a') j'obtient 1 et non 65!
|
|
mardi 22 avril 2008 à 23:07:00 |
Re : comment convertir un char en sa valeur code touche?

mighty_warrior
|
en fait ce que je cherche a faire c ça: Avec le code suivant (où c est un char) keybd_event( char a convertir en code touche,0,1,0)
par exemple si c represente la lettre A il vaut 65 une fois convertit.
merci
|
|
mercredi 23 avril 2008 à 00:03:40 |
Re : comment convertir un char en sa valeur code touche?

mighty_warrior
|
J'ai réussi à remédier a mon probléme de départ comme ceci: S := 'texte'; if iskeydown('0') then begin for i := 1 to length(s) do begin C := S[i]; x := ord(c); y := 32; z := x-y; keybd_event(z,0,1,0); keybd_event(z,0,2,0); end; end; Donc quand j'appuie sur la touche 0 j'écrit la valeur de S et tout marche bien    Mon second souci c'est que si S vaut par exemple ' delphifr c cool' il sera écrit comme ceci: delphifrccool.  alors y-a t'il un moyen de gérer les espaces? merci ps merci Caribensila ton Ord('A') m'a bien aidé.  
|
|
mercredi 23 avril 2008 à 00:52:24 |
Re : comment convertir un char en sa valeur code touche?

mighty_warrior
|
Bon je crois que j'ai de la chance. Je vient de trouver une parade, certe ce n'est sans doute pas la meilleur solution mais bon..je la poste quand même  mot: string; c: char; x,y,z,NbrCaractere: integer; dans formcreatemot := ' delphifrccool'; dans un timerif iskeydown('0') then //quand j'appuie sur la touche zero begin for i := 1 to length(mot) do begin C :=mot[i]; x := ord(c); y := 32; z := x-y; keybd_event(z,0,1,0); //j'appuie sur la touche correspondant a chaque lettre composant "mot" keybd_event(z,0,2,0);//je relâche la touche correspondant a chaque lettre composant "mot" inc(NbrCaractere); // if (NbrCaractere=7)xor(NbrCaractere=10) then // si j'ai ecrit 7 lettres (delphi = 6 lettres +1) begin keybd_event(32,0,1,0); //faire un espace keybd_event(32,0,2,0); end; end; NbrCaractere := 1; end; voilà.  mais si quelqu'un a une meilleur solution à proposer je suis preneur lol. allez bonne nuit à tous et merci.
|
|
mercredi 23 avril 2008 à 11:38:10 |
Re : comment convertir un char en sa valeur code touche?

cirec
|
Réponse acceptée !
oh la oh la
c'est pas du tout comme ça que Keybd_Event fonctionne :
{Reste appuyé ou relache une touche aKey en fonction du paramètre Down} Procedure ToogleKey(Const aKey : Byte; Const Down: Boolean = True); Var KeyDown : Byte; Begin If Not Down Then KeyDown := 2 Else KeyDown := 0; keybd_event(aKey, 0, KeyDown, 0); End;
{Reste appuyé ou relache les touches Ctrl et Alt en fonction du paramètrte Down} Procedure SimuleCtrlAlt(Const Down: Boolean = True); Var KeyDown : Byte; Begin ToogleKey(VK_MENU, Down); ToogleKey(VK_CONTROL, Down); End;
{Appuie et relache une touche} Procedure DoKeybdEvent(Const aKey : Byte); Begin keybd_event(aKey , 0, 0, 0); keybd_event(aKey , 0, KEYEVENTF_KEYUP, 0); End;
{Gère les touches à bascule VerrMaj VerrNum ArrêtDefil} Procedure SimuleOnOfKey(Const aKey: Byte; Const IsOn: Boolean = True); Begin If GetKeyState(aKey) <> Integer(IsOn) Then DoKeybdEvent(aKey); End;
Procedure PressKey(Const aKey : Byte); Begin ToogleKey(aKey); End;
Procedure ReleaseKey(Const aKey : Byte); Begin ToogleKey(aKey, False); End;
{Gère l'appuie n'importe quelle touche du clavier c'est la procédure que l'on utilisera pour simuler l'appuie sur les différentes touches du clavier} Procedure SimuleKey(Const aChar: Char); Begin Case aChar Of {Touches majuscules} 'A'..'Z','0'..'9','?','.','/','§','?','£','%','µ','°','+': Begin ToogleKey(VK_SHIFT); DoKeybdEvent(VkKeyScan(aChar)); ToogleKey(VK_SHIFT, False); End; {Touches Ctrl+Alt} '~','#','{','[','|','`','\','^','@',']','}': Begin SimuleCtrlAlt; DoKeybdEvent(VkKeyScan(aChar)); SimuleCtrlAlt(False); End; Else {Touches minuscules} DoKeybdEvent(VkKeyScan(aChar)); End; End;
pour l'utilisation c'est simple : {On s'assure d'être en minuscule obligatoire pour le bon fonctionnement ne faire qu'une fois en début de code (dans le OnCreate par Ex.)} SimuleOnOfKey(VK_CAPITAL, False); {et on simule l'appuie des touches} For I := 1 To length(mot) Do SimuleKey(Mot[I]);
{pour les combinaisons de touche autres que "standard"} {Exemple faire un Ctrl+C} PressKey(VK_CONTROL); SimuleKey('C'); ReleaseKey(VK_CONTROL); @+ Cirec
@+ Cirec
|
|
mercredi 23 avril 2008 à 22:48:23 |
Re : comment convertir un char en sa valeur code touche?

Delphiprog
|
@Cirec : là, tu es bon pour nous faire un tuto sur la gestion du clavier  May Delphi be with you !
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
|
|
Cette discussion est classée dans : code, valeur, convertir, touche, char
Répondre à ce message
Sujets en rapport avec ce message
Convertir une chaine en numérique [ par codial ]
Bonjour,comment fait on pour convertir une chaine de type "1425.63" en numérique?j'ai essayé :Table1.fieldbyName('Prix_Inventaire').asInteger:= StrToI
Gif to Jpeg. [ par Becracker ]
Salut les gars, Je voudrais juste savoir c koi le code pour faire convertir une image Gif au format Jpeg sachant que j'ai utilisé le code suivant mai
Convertir StringGrid (crée par code) vers une image [ par orelien ]
Bonjour,J'aimerais copier un composant StringGrid dans une image sans qu'il soit préalablement affiché sur le Form. En bref, je crée par code le compo
Juste pour un affichage peu particulier sur mon Etat d'impression. [ par jennybless ]
Salut ! J’ai un petit problème de logique. Pouvez-vous m’aider en lisant d’abord mes codes: J’ai trois champs : CODE, A, B J’aimerai qu’à chaque foi
code ascii de la touche suppr [ par elementalord ]
Bonjour à tous!!Je voudrais savoir si quelqu'un connaitrait le code ascii de la touche suppr.Merci d'avance pour votre reponse.
Key codes... [ par ELCouz ]
Bonjour,jaimerais savoir si qqn connais un site ou on peu voir tout les codes KEY de F1 a la touche standby etc,,,bref les codes a placer dans la sent
utiliser la valeur d'une qrexpression (qreport) [ par habib1976 ]
salut ,j'ai écrit une fonction numtext pour convertir un chiffre en texte (ex :112= cent douze)je veut récupérer le resultat d'une expression (contro
touche clavier [ par loveyara ]
bjr a tous le monde, j'ai une db grid dans lequel je veux désactiver la touche bas du clavier s'il y a un condition précise voila le code [color=gree
Livres en rapport
|
Derniers Blogs
[FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PCTECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2012 : SYSTEM CENTER SERVICE MANAGER 2012 VUE D'ENSEMBLETECHDAYS PARIS 2012 : SYSTEM CENTER SERVICE MANAGER 2012 VUE D'ENSEMBLE par ROMELARD Fabrice
Speakers: Julien Marechal, Gautier Confiant, Sébastien MEYER La session débute par le positionnement de la solution System Center par rapport aux concepts d'organisation ITIL. Le portail du catalogue de se...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2012 : PLEINIèRE SECOND JOURTECHDAYS PARIS 2012 : PLEINIèRE SECOND JOUR par ROMELARD Fabrice
Après une première journée dédiée aux développeurs, cette seconde journée est dédiée au monde des entreprises et de ses applications. Ainsi, cette pleinière est dédiée à faire un 360 de l'évolution des applications Business aux demandes ac...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|