begin process at 2012 05 28 17:52:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

Shell

 > 

Détecter CTRL+V


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Détecter CTRL+V

dimanche 9 octobre 2011 à 19:03:31 | Détecter CTRL+V

mogwai93

Bonjour

j'aimerais savoir s'il est possible de détecter sur un champ edit
si le texte rentré vient "du clavier" ou s'il vient d'un copier coller (ctrl+V ou menu contextuel clic droit+coller)

J'arrive à détecter l'appui sur Ctrl ou sur V, mais pas la combinaison
et pour le clic droit "coller" : aucune idée


merci
dimanche 9 octobre 2011 à 21:24:26 | Re : Détecter CTRL+V

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
Pour hooker tout ce qui se passe dans un controle, EDIT ou autre, on le sous classe.

Exemple minimaliste qui interdit le copier-coller.

Code C/C++ :
HWND hNBR = 0;
WNDPROC oldFloatProc = 0;

LRESULT CALLBACK ProcEdFloat(HWND hwnd, UINT mssg, WPARAM wParam, LPARAM lParam)
{
  //if(mssg == WM_CHAR) TonCodePourWM_CHAR();
  if(mssg == WM_PASTE) return 0;
  return CallWindowProc(oldFloatProc, hwnd, mssg, wParam, lParam);
}

INT_PTR AppDlgProc(HWND hdlg, UINT mssg, WPARAM wParam, LPARAM lParam)
{
  switch(mssg) {
    case WM_INITDIALOG:
      SetClassLongPtr(hdlg, GCLP_HICON, (LONG_PTR) LoadIcon(0, IDI_APPLICATION));
      hNBR = GetDlgItem(hdlg, IDED_NBR);
      SendMessage(hNBR, EM_LIMITTEXT, 23, 0);
      oldFloatProc = (WNDPROC) SetWindowLongPtrA(hNBR, GWLP_WNDPROC, (LONG_PTR) ProcEdFloat);
      return 1;
    case WM_COMMAND:
      switch(wParam) {
        case IDOK:
          onOK();
          return 0;
        case IDCANCEL: EndDialog(hdlg, 0);
      }
  }
  return 0;
}


ciao...
BruNews, MVP VC++
dimanche 9 octobre 2011 à 21:29:11 | Re : Détecter CTRL+V

mogwai93

merci

j'avais bien sous classé mon edit
il me manquait juste le WM_PASTE


Cette discussion est classée dans : ctrl, clic, détecter, vient, coller


Répondre à ce message

Sujets en rapport avec ce message

copie coller en c [ par tofismagic ] bonjours dans une application en C j'aimerais savoir comment effectuer un copier coller avec une touche racourci car le ctrl+c et ctrl+v ne fonctionne Détecter une combinaison de touches sur windows comme ctrl+alt+supp [ par ZMJUVENTINO ] Salut,je travaille avec les MFC sur VC++ et je veux détecter ,à partir de mon application ,une combinaison de touches clavier sur windows à n'importe Comment avoir le "EOF" sans taper ctrl d?? [ par fatfat692675 ] Bonsoir tout le monde!!J'ai un petit problème que j'essaie de résoudre en vain: je veux écrire un code en C qui fait la meme chose que ctrl d.En fait, Copier un ou plusieur fichiers [ par aroldbaa85 ] Salut Je suis sur un programme qui doit copier les fichiers sélectionnés depuis un quelconque dossier et les coller  dans un autre en fait une sorte d Détecter une carte SD ou MMC [ par Nixeus ] Bonjour, Je souhaiterai automatiser en C/C++ la copie d'un fichier vers une carte SD ou MMC qui serait insérée dans le pc. Je souhaiterai savoir sil API Detecter double clic sur une child windows [ par Silince ] Bonjour, J'arrive pas a partir d'une fenetre parent de detecter un double clic sur sa fenetre fille. J ai essaye avec WM_PARENTNOTIFY, il detecte bi IP Manager [ par Elixyr ] Bonjour a tous, Alors voila: en fait je suis en train de faire un "IP Manager"... fenetre qui permet d'afficher son Adresse IP en un clic... ca c'est Copier / coller un dossier en entier [ par roxod ] Bonjour, J'ai besoin de copier un dossier contenant des fichiers et des sous dossiers. Mon code : FILE *fds, *fdd; int value; fds = fopen(" savoir quel case d'un tableau bidimensionel est lié au clic de la souris [ par juju116 ] bonjour j'ai un petit souci de comprehension j'ai un tableau declaré ainsi: int tableau[3][3]; tout mes cases sont intialisé à zero à l'aide de deux b


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,716 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales