Afficher clavier virtuel windows 7

jimmsr Messages postés 2 Date d'inscription jeudi 8 juin 2006 Statut Membre Dernière intervention 3 février 2011 - 2 févr. 2011 à 17:12
WhiteHippo Messages postés 1154 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 5 avril 2012 - 3 févr. 2011 à 23:52
Bonjour à tous,

Je développe actuellement une application en delphi 2007 pour un Eee PC tactile.
Celui-ci tourne sur un OS Windows 7.

Ma question est assez simple, comment appeler le clavier virtuel de Windows 7 lorsqu'on clique dans un TEdit.
Car par défaut Windows gère l'évènement, il affiche une icone de clavier et lorsque l'utilisateur clique dessus il affiche le clavier virtuel.
Mon objectif est d'éviter à l'utilisateur de cliquer sur cette icone et d'afficher directement ce clavier virtuel lorsqu'il clique sur mon TEdit.

J'ai déjà essayé d'appeler le clavier osk.exe de windows mais celui est légèrement différent : sur la droite on retrouve une zone de bouton inutile pour mon cas. De plus celui-ci ne se rend pas invisible automatiquement. Et dans les options je ne trouve pas mon bonheur.

Une idée?

Merci d'avance.

A+

2 réponses

jimmsr Messages postés 2 Date d'inscription jeudi 8 juin 2006 Statut Membre Dernière intervention 3 février 2011
3 févr. 2011 à 12:28
J'ai trouvé une piste:

Le clavier virtuel appelé quand on clique sur une zone de saisie se nomme TabTip.exe

C'était bien ce clavier que je cherchais.

Mon nouveau problème est que j'aimerai connaitre si cette application prend en compte des arguments car j'aimerai passer le handle de mon TEdit par exemple pour que ce clavier s'affiche correctement juste au dessus de mon Edit et que celui-ci se cache quand on clique en dehors de celui-ci.

Je ne trouve pas de documentation sur cet exe Windows.

A moins d'avoir une autre solution?

Merci d'avance.

A+
0
WhiteHippo Messages postés 1154 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 5 avril 2012 3
3 févr. 2011 à 23:52
Bonsoir

En cherchant 'IPTip_Main_Window' avec un FindWindow tu vas obtenir le handle de la fenêtre du clavier. Puis avec un GetWindowRect tu auras ses coordonnées (Attention,coordonnées écran). En tenant compte de la position (en coordonnées écran) de ton TEdit tu pourras alors déplacer ton clavier selon tes besoins avec un MoveWindow.

N.B. Pure théorie bien sur !

Cordialement.[hr]"L'imagination est plus importante que le savoir." Albert Einstein
0
Rejoignez-nous