IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

remplacer une touche par une autre


Sujet :

Delphi

  1. #1
    iam
    iam est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 197
    Points : 72
    Points
    72
    Par défaut remplacer une touche par une autre
    salut
    je veux remplacer la touche de fleche de direction droite par entrer, cad quand je tappe vk_right j'execute le code qui se déclenche quand je tappe entrer, j'ai essayé ça dans l'evenement OnKeyDown, mais ça ne marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if key=vk_right then key:=vk_return;

  2. #2
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 446
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 446
    Points : 5 867
    Points
    5 867
    Par défaut
    salut


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (Key=VK_right) then
    begin
      Key := 0;
      keybd_event (VK_RETURN,0,0,0);
    end;
    @+ Phil

  3. #3
    iam
    iam est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 197
    Points : 72
    Points
    72
    Par défaut
    merci pour votre réponse mais ça n'a pas marché, en faite, je veux eviter que l'user valide le contenu d'une cellule dans un stringgrid par la touche vk_right, car il s'affiche un message d'erruer c'est pour ça je veux remplacer l'appui de cette touche par celle de la touche entrer, pour valider la cellule et passer à la suivante

  4. #4
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 446
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 446
    Points : 5 867
    Points
    5 867
    Par défaut
    salut

    comment ça le code n'as pas marché ?
    le keypreview sur ta form est comment ?

    @+ Phil

  5. #5
    iam
    iam est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 197
    Points : 72
    Points
    72
    Par défaut
    le keypreview de ma forme est à true, mais ça n'a pas marché, mais j'ai mis ton code dans l'evenement OnKeyDown de mon stringgrid, pad de celui de ma form, je t'explique un peu ce que je veux faire pour que vous puissez m'aider, que je saisie un chiffre dans une cellule après je tape entrer je passe à l'autre et je fais une multiplication après que je fais une conversion strtoint et j'affiche le resultat dans une dernière cellule, quand l'utlisateur appuie sur la flèche de direction à la place de entrer il m''affiche une message d'erreur, valeur entière incorrecte,don c'est pour ça je veux remplacer le cette touche par entrer pour eviter au user de voir de tels messages d'erreurs, j'espère que j'etais très clair et merci infiniment pour ton aide

  6. #6
    Membre émérite
    Avatar de Thierry Laborde
    Homme Profil pro
    N/A
    Inscrit en
    Avril 2002
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : N/A

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 391
    Points : 2 529
    Points
    2 529
    Par défaut
    Salut,

    J'ai fait le test chez moi et le code d'anapurna fonctionne correctement.
    Mais le problème que je vois c'est que tu essayes d'intercepter les touches pour modifier un comportement tout simplement pour cacher une erreur non prévu dans ton code. Je pense qu'il serait plus judicieux de gérer lorsque tu fait ton STRTOINT le cas ou le chiffre saisi n'est pas correct voir la celulle vide. Du moins moi c'est ce que je ferais.

  7. #7
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 446
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 446
    Points : 5 867
    Points
    5 867
    Par défaut
    salut

    en fait c'est dans l'evenement de sortie de ta cellule qu'il faut gerer c'est a ce momment que l'erreur ce produit
    si tu enter tu passe de toute les facons a la cellule suivante


    @+ Phil

  8. #8
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    tu mets le code dans l'evenement OnkeyPress et non dans OnKeyDown il faut vérifier si il faut mettre Keypreview de ta fiche a true

    le Key et de type char et non entier comme pour OnKeypress

    VK_RETURN <=> #13

  9. #9
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    essai ce code dans l'evenement OnKeyDown


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if Key = VK_RETURN
    Try
     StrToInt(StringGrid1.Cells[StringGrid1.col,StringGrid1.Row]);
      Key := VK_TAB
     
     Except
       ShowMessage('Valeur entiere incorect');
     end;
    il faut executer le prog a l'extérieru sinon IDE intercept l'exeption avant le Try except

  10. #10
    iam
    iam est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 197
    Points : 72
    Points
    72
    Par défaut
    merci infiniment pour toutes vos réponses et eclaircissements, surtout la remarque de tiki06, il faut que je cherche à gérer l'erreur et pas la cacher

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. xmodmap Remplacer une touche par une autre
    Par zamborta dans le forum Matériel
    Réponses: 1
    Dernier message: 05/12/2014, 15h57
  2. Remplacer lettres contenues dans une variable par d'autres lettres
    Par AZzjeioafh dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 02/12/2009, 19h53
  3. Remplacer un mot ou une expression par un autre via XSLT?
    Par poisson03 dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 03/06/2009, 02h55
  4. [RegEx] Remplacer dernière occurence d'une chaine par une autre
    Par webjoujou dans le forum Langage
    Réponses: 3
    Dernier message: 12/11/2008, 18h58
  5. Simuler une touche par une autre sous Windows
    Par sdelaunay dans le forum Windows
    Réponses: 2
    Dernier message: 05/05/2006, 15h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo