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

Langage Delphi Discussion :

Fonction copier/coller avec un menu


Sujet :

Langage Delphi

  1. #1
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut Fonction copier/coller avec un menu
    Bonjour,

    mon problème est que j'ai créé un menu avec les fonction PopUpMenu, j'ai créé les lignes copier coller, mais je ne sais pas comment les rendre fonctionnel, c'est a dire le code qui va leur permettre de "copier" et "coller" les chaines de caractères comprises dans les "Memo1" et "Memo2".

    Pouriez vous m'éclairer?
    merci beaucoup !

  2. #2
    Membre émérite
    Avatar de Merlin
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2002
    Messages
    524
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2002
    Messages : 524
    Points : 2 883
    Points
    2 883
    Par défaut
    Le mieux consiste à utiliser un message windows qui donne l'ordre au contrôle ayant le focus d'effectuer le copier ou le coller. Comme ça s'il le gère ça marche bien, sinon rien ne se passe sans problème. Et de cette façon tu peux généraliser ton popup à tout contrôle...

    pour copier: PostMessage(getFocus(), WM_COPY, 0, 0 );
    pour coller, utiliser WM_PASTE

    quant à getFocus() c'est une API qui retourne l'objet ayant le focus, avantage: cela marche à tous les coups quel que soit le contrôle (même un OCX).

    En revanche, dans ton cas c'est le popup qui aura le focus, il faut donc remplacer getFocus par le handle du contrôle ayant déclenché le popup (cela s'obtient par l'objet popup menu).

  3. #3
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    Voilà qui répond peut-être à ta question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    uses Clipbrd;
    ...
    //copie dans le presse papier tout le contenu du memo1
    clipboard1.astext:=memo1.text ;  
    ...
    //copie dans le prese papier le texte sélectionné dans le memo2
    clipboard.astext:=memo2.seltext ;
    ...
    //copie le contenu du presse papier dans le memo3
    memo3.text:=clipboard.astext ;

  4. #4
    Membre habitué Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Points : 188
    Points
    188
    Par défaut
    Perso j'ai mis ça, maintenant c'est nikel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    procedure TForm1.Copier2Click(Sender: TObject);
    begin
     
          Memo2.CopyToClipboard;
     
    end;
     
    procedure TForm1.Coller2Click(Sender: TObject);
    begin
     
          Memo2.PasteFromClipboard;
     
    end;
     
    procedure TForm1.Copier1Click(Sender: TObject);
    begin
     
             Memo1.CopyToClipboard;
     
    end;
     
    procedure TForm1.Coller1Click(Sender: TObject);
    begin
     
         Memo1.PasteFromClipboard;
     
    end;
    Merci beacoup les gars !

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

Discussions similaires

  1. Problemes avec copier/coller avec VI
    Par fgalves dans le forum Linux
    Réponses: 7
    Dernier message: 06/01/2009, 15h43
  2. copier-coller avec listbox
    Par LeNeutrino dans le forum Windows Forms
    Réponses: 4
    Dernier message: 26/01/2007, 13h06
  3. [debutant]class TCustomEdit et les fonctions Copier/Coller
    Par Revan777 dans le forum C++Builder
    Réponses: 6
    Dernier message: 05/01/2006, 19h29
  4. copier coller avec Pastespecial en VBA
    Par stormless dans le forum Général VBA
    Réponses: 1
    Dernier message: 06/11/2005, 11h59
  5. [Swing]copier coller... dans le menu.
    Par parksto dans le forum Composants
    Réponses: 3
    Dernier message: 10/05/2004, 22h56

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