je peux pas etre plus precis dans mon sujet...

J'expose le probleme:

Soit un tree view tvwAll
dans ce treeview (tw), j'ai 2 profondeurs:
- les composants qui sont tous freres
- une action qui est fils d'un des composants

avec ce tw, je gere deja:
- le drag and drop pour passer une action d'un composant a un autre
- la copie d'une fonction selectionnée grace a un bouton

Ce bouton, voici le code essentiel pour la copie:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
ReDim Preserve Actions(ActCount)
    Set Actions(ActCount).Components = New Collection
    Actions(ActCount).ActionName = Description
    For a = 1 To Actions(CurrentAction).Components.Count
        Actions(ActCount).Components.Add Actions(CurrentAction).Components(a)
    Next a
 
    CurrentAction = ActCount
    ActCount = ActCount + 1
 
    tmrRefresh.Enabled = True
Mon client qui adorre me torturer (d'un autre cote, je suis (pas)payé pour (stagiaire)), aimerai que si je fais un drag N Drop avec la touche shift enfoncée, et que je drag vers un autre composants, j'insere comme fils a se composant une copie de mon action.

J'ai de base dans mon code (code fait par un autre programmeur que je modifie) pleins de fonctions rigolotes sur les drag N Drop, donc je devrai pouvoir trouver ou inserer ma copie...

La question est, comment j'effectue ma fonction copier que si shift est enfoncé ?
J'entends deja jfmarques me dire de regarder du coter de KeyDown et KeyPress ( :p ).
Mais dans mon code, j'veux juste savoir la tronche que ca va avoir:

fonction JeRelacheMonClicDansMonDragNDrop
{
si toucheShift enfoncee Alors
Copie de l'action grace a la fonction ci dessus
Fin Si
}

Ca doit ressembler a un truc comme ca ?