|
Copier-Coller dans un champ de saisie |
|
Stagiaire WDF ![](http://old.wdforge.org/uploads/rank3e84154a75422.gif)
Inscrit: 26/06/2003 09:14
De alençon (orne - basse-normandie - france - terre ...)
Post(s): 16
|
bonjour,
je débute en windev et je me demandais s'il était possible de désactiver le Copier-Coller (ctrl-V) dans un champ de saisie.
merci
Contribution le : 26/06/2003 09:19
|
|
|
Re: Copier-Coller dans un champ de saisie |
|
Animateur WDF ![](http://old.wdforge.org/uploads/rank3e8416e15d1a7.gif)
Inscrit: 26/06/2002 16:24
De wdforge.org
Post(s): 2822
|
Oui, il faut intercepter les touches ctrlC et ctrlV - dans le code du champ activer l'évènement 'touche relachée' et y mettre le code qui fait que la touche sera inactive... Si _EVE.wparam = code_pour_ctrlC_ou_ctrlV alors
_EVE.retour=0
fin
désolé mais j'ai pas trouvé en qqs minutes le code des ctrlC||V
Contribution le : 26/06/2003 10:15
|
|
|
Re: Copier-Coller dans un champ de saisie |
|
Stagiaire WDF ![](http://old.wdforge.org/uploads/rank3e84154a75422.gif)
Inscrit: 26/06/2003 09:14
De alençon (orne - basse-normandie - france - terre ...)
Post(s): 16
|
merci bien romu,
ça marche nickel si ça interesse qqun code copier : WM_COPY = 769 code coller : WM_PASTE = 770
petitstagiaire
Contribution le : 26/06/2003 11:00
|
|
|
Re: Copier-Coller dans un champ de saisie |
|
Animateur WDF ![](http://old.wdforge.org/uploads/rank3e8416e15d1a7.gif)
Inscrit: 26/06/2002 16:24
De wdforge.org
Post(s): 2822
|
De rien.
Merci pour le complément, c'est important et cela peut toujours intéresser quelqu'un.
Contribution le : 26/06/2003 11:10
|
|
|
Re: Copier-Coller dans un champ de saisie |
|
Stagiaire WDF ![](http://old.wdforge.org/uploads/rank3e84154a75422.gif)
Inscrit: 26/06/2003 09:14
De alençon (orne - basse-normandie - france - terre ...)
Post(s): 16
|
Autre problème :
Voici mon code //initialisation de la fenetre //on récupère WM_PASTE Evénement("IdentEvenement","Saisie1", 770)
//Procédure Locale PROCEDURE IdentEvenement(Message, wParam, lParam)
//On renvoit l'évènement WM_UNDO _EVE.Retour = 772
Ce code marche bien pour les champs de saisie (même multiligne) mais lorsque je coche l'option "Format R.T.F", il ne veux plus rien entendre.
j'ai un peu cherché dans la liste des evènements windows mais c'est un peu imbuvable et je suis peut etre sur la mauvaise piste
si qqun à un peu de temps à perdre
bon apétit
petitstagiaire
Contribution le : 26/06/2003 11:57
|
|
|
Re: Copier-Coller dans un champ de saisie |
|
Stagiaire WDF ![](http://old.wdforge.org/uploads/rank3e84154a75422.gif)
Inscrit: 26/06/2003 09:14
De alençon (orne - basse-normandie - france - terre ...)
Post(s): 16
|
A défaut j'ai trouvé une feinte de la mort :
j'utilise ctrl-v comme lettre d'appel. vu que c'est la seule chose que j'avais à bloquer ça marche pas mal.
si vous avez qd même qque chose de plus catholique merci de me le faire savoir
petitstagiaire
Contribution le : 26/06/2003 15:02
|
|
|
Re: Copier-Coller dans un champ de saisie |
|
Animateur WDF ![](http://old.wdforge.org/uploads/rank3e8416e15d1a7.gif)
Inscrit: 26/06/2002 16:24
De wdforge.org
Post(s): 2822
|
Non j'ai rien sous la mais de relatif aux champs de saisie RTF.
C'est bien bizarre, qu'en dit le ST PCSoft ? Tu peux leur envoyer une fenêtre pour tester (juste la fenêtre avev un champ sa sasie normal et un compatible RTF)
la seule chose serai de standardiser ton évènement() sur la fenêtre avec un "*." à la place du nom du champ.
Contribution le : 26/06/2003 15:16
|
|
|
Re: Copier-Coller dans un champ de saisie |
|
Stagiaire WDF ![](http://old.wdforge.org/uploads/rank3e84154a75422.gif)
Inscrit: 26/06/2003 09:14
De alençon (orne - basse-normandie - france - terre ...)
Post(s): 16
|
bonjour,
voici une réponse qui désactive vraiment le ctrl-v et qui peut être complétée pour désactiver d'autres touches. réponse donnée par JL :
// Code dans la zone déclarations globales de la fenêtre // saisie1 étant le champ rtf
EM_SETEVENTMASK est un entier = 0x400 + 69 SendMessage(Handle(Saisie1),EM_SETEVENTMASK,0,0x10000) Evénement("IdentEvenement","",0x4E) //4e=notify
// PROCEDURE IdentEvenement()
msgfilter est une structure hwndFrom est un entier idFrom est un entier sans signe code est un entier sans signe msg est un entier sans signe wParam est un entier lParam est un entier FIN
msg est un msgfilter API("kernel32","RtlMoveMemory",&msg,_EVE.lparam,Dimension(msg))
SI msg:hwndFrom = Handle(Saisie1) ALORS SI msg:code = 0x700 // EN_MSGFILTER SI msg:msg = 0x100 ALORS // WM_KEYDOWN SI msg:wParam = 86 ET ToucheEnfoncée(teControl) ALORS // CTRL V RENVOYER 1 FIN FIN FIN FIN
bon courage
petitstagiaire
nb : je ne vous cache pas que je n'ai pas tout compris mais ça s'utilise bien
Contribution le : 27/06/2003 09:26
|
|
|
Re: Copier-Coller dans un champ de saisie |
|
Animateur WDF ![](http://old.wdforge.org/uploads/rank3e8416e15d1a7.gif)
Inscrit: 26/06/2002 16:24
De wdforge.org
Post(s): 2822
|
Merci pour le tuyau. Une fois de plus JL nous montre sa compétence en API ! Une sacré connaissance sur l'interception des evènements.
Contribution le : 27/06/2003 09:41
|
|
Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.