Problème de Drag and drop

Le
ByB
Bonjour,

Je développe une application MFC sous Win XP avec Visual C++ 6.0.
Je gère le Drag and Drop sur une classe dérivée de CDialog, en gérant :

afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnDropFiles(HDROP hDropInfo);

et j'initialise le Drag and drop avec DragAcceptFiles() dans
l'InitDialog de mon dialog.

Jusque là, tout va bien, sauf que de cette façon, je gère de Drag and
drop sur le dialog tout entier, alors que je voudrais qu'il ne
fonctionne que si le fichier est droppé dans une ListBox (m_liste)
présente sur ce dialog.

Que dois je modifier pour cela ?

Merci de vos conseils.

--
Le tapioca a un goût de moisi assez déplaisant pour les personnes qui
n'aiment pas le moisi.
[Alphonse Allais]
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
domi
Le #19510211
ByB wrote:

Jusque là, tout va bien, sauf que de cette façon, je gère de Drag and
drop sur le dialog tout entier, alors que je voudrais qu'il ne
fonctionne que si le fichier est droppé dans une ListBox (m_liste)
présente sur ce dialog.

Que dois je modifier pour cela ?



Tu l'implémentes sur la CListBox, comme sur ce genre d'exemple :
http://blog.csdn.net/starlee/archive/2007/01/03/1472710.aspx
ByB
Le #19510621
domi avait énoncé :
ByB wrote:



Jusque là, tout va bien, sauf que de cette façon, je gère de Drag and drop
sur le dialog tout entier, alors que je voudrais qu'il ne fonctionne que si
le fichier est droppé dans une ListBox (m_liste) présente sur ce dialog.

Que dois je modifier pour cela ?





Tu l'implémentes sur la CListBox, comme sur ce genre d'exemple :
http://blog.csdn.net/starlee/archive/2007/01/03/1472710.aspx



Merci pour la réponse. J'ai trouvé une autre solution, et qui est de
remplacer la ligne :

DragAcceptFiles();

par

m_liste.DragAcceptFiles();

ce qui fait que le Drag and drop ne marche que dans la liste,
ce qui résoud aussi le problème ...

En tout cas, merci pour le lien, très intéressant par ailleurs.


--
Je ne comprends pas les anglais ! Tandis qu'en France nous donnons à
nos rues des noms de victoire: Wagram, Austerlitz... là-bas, on leur
colle des noms de défaite: Trafalgar square, Waterloo Place...
(Alphonse Allais)
Publicité
Poster une réponse
Anonyme