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 :

raccourcis clavier sur le menu popup d'un TMemo


Sujet :

Delphi

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2005
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 103
    Points : 97
    Points
    97
    Par défaut raccourcis clavier sur le menu popup d'un TMemo
    Bonjour je cherche à ajouter les raccourcis clavier standard sur les action copier/coller/couper du menu popup d'un TMemo. J'ai essayé de passer par l'évènement KeyDown du TMemo pour récupérer la combinaison de touche avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
      if (ssCtrl in Shift) then
      begin
        // Copier
        if Key = 67 then
          ro_Commentaire.CopyToClipboard
        // Coller
        else if Key = 86 then
          ro_Commentaire.PasteFromClipboard
        // Couper
        else if Key = 88 then
          ro_Commentaire.CutToClipboard;
      end;
    Avec ce code, lorsque la touche "ctrl" est enfoncée, je n'arrive pas à récupérer les autres touches. Une idée?

  2. #2
    Membre chevronné

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 291
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2002
    Messages : 1 291
    Points : 1 942
    Points
    1 942
    Par défaut
    Tu y arrives très bien mais pas en debug, mets un ShowMessage plutôt qu'un point d'arrêt.

    Et utilise un case plutôt que des if else.

  3. #3
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 436
    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 436
    Points : 5 851
    Points
    5 851
    Par défaut
    salut


    tu as oublier le inherited dans les autre cas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	else
    	 inherited KeyDown(Key,Shift);
    @+ Phil

  4. #4
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut,

    Les méthodes Copier, Couper et Coller sont déjà implémentées pour un TMemo.

    Fais ce test: Pose 2 TMemo sur une fiche, et fais des copier, couper et coller d'un Memo à l'autre (ou vers le même Memo) tu verras qu'il est inutile de codé les raccourcis clavier (Ctrl-C, Ctrl-X et Ctrl-V).


    @+ Claudius.

    [/edit] sur un popup.... j'ai rien dit [edit]

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2005
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 103
    Points : 97
    Points
    97
    Par défaut
    Citation Envoyé par Claudius40
    Salut,

    Les méthodes Copier, Couper et Coller sont déjà implémentées pour un TMemo.

    Fais ce test: Pose 2 TMemo sur une fiche, et fais des copier, couper et coller d'un Memo à l'autre (ou vers le même Memo) tu verras qu'il est inutile de codé les raccourcis clavier (Ctrl-C, Ctrl-X et Ctrl-V).


    @+ Claudius.

    [/edit] sur un popup.... j'ai rien dit [edit]
    Je sais bien que ces méthodes sont déjà présente mais via le menu popup. Je veux rajouter les raccourcis clavier qui correspondent à chaque fonction: copier/coller et couper.

  6. #6
    Membre régulier
    Inscrit en
    Janvier 2005
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 103
    Points : 97
    Points
    97
    Par défaut
    Avec ou sans case, ça ne fonctionne pas mieux, en mode DEBUG ou pas idem. J'ai testé mon code dans l'évènement OnKeyUp et la ça fonctionne mais je préférais dans le OnKeyDown...
    C’est étonnant que les deux évènements n’ont pas le même comportement, serait ce un bug ?

  7. #7
    Membre régulier
    Inscrit en
    Janvier 2005
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 103
    Points : 97
    Points
    97
    Par défaut
    Je suis dans une application MDI... mais je n'ai aucun gestionnaire d'évènement sur le OnKeyDown dans ma fenêtre principale, donc rien qui n'explique pourquoi la var Key n'est pas mise à jour.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/06/2008, 16h37
  2. [JTable] Raccourci clavier sur une Table
    Par sylvain_2020 dans le forum Composants
    Réponses: 5
    Dernier message: 05/07/2007, 09h01
  3. Créer des raccourcis clavier pour un menu général
    Par quent157 dans le forum Modélisation
    Réponses: 1
    Dernier message: 31/05/2007, 19h18
  4. Probleme sur creation menu popup
    Par biloute2121 dans le forum MFC
    Réponses: 1
    Dernier message: 11/01/2006, 08h41
  5. Comment spécifier des raccourcis claviers sur une Form ?
    Par Sydaze dans le forum Composants VCL
    Réponses: 5
    Dernier message: 17/06/2005, 09h05

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