| | will34 | Posté le 23/05/2006 @ 10:19 | Petit astucien
3 Messages
| Bonjour,
je cherche à utiliser l'objet System.Windows.Form.WebBrowser pour faire des drag and drop de fichiers, d'images et de texte.
Cet outil gère déjà de façon autonome le drag and drop (si l'on met la propriété AllowWebBrowserDrop à true) :
- par exemple si je dragge un PDF sur mon objet webbrowser (ou une image ou un fichier word ou un fichier txt) , il me l'affiche directement.
=>Je ne souhaite justement pas qu'il me l'affiche mais simplement qu'il récupère son url locale ou http ....
- le drag and drop de texte ne fonctionne pas
=>je souhaite dragger du texte provenant de n'importe quelle appli externe à la mienne..
Est-il possible de changer ses comportements par défaut du "drag and drop web browser" ?
Par avance merci, cordialement
| | |
| |
| Publicité |
|
| | koala01 | Posté le 23/05/2006 à 13:35 | Astucien
4715 Messages
| Salut,
En sachant quel langage tu utilises (quoi qu'il *semblerait* qu'il s'agisse soit du java soit du VB), on aurait beaucoup plus facile à te donner la manière réelle de travailler… Mais a priori, c'est effectivement faisable…
Le tout premier conseil à te donner est donc "aide nous à t'aider en nous fournissant suffisemment d'informations pour savoir quel langage parler" [clindoeil]
Bien que sans savoir le langage que tu utilises, il faut savoir que le "drag and drop" est en fait composé lui même d'une série de méthodes différentes, dont les noms peuvent varier selon le langage, mais dont le principe est d'avoir
- on_start_drag: tu commences un déplacement au départ de ton objet (ici ton web browser)
- on_drag_over:tu déplaces ta souris un bouton enfoncé au dessus de ton objet
- on_drag_end: tu mets fin au déplacement (typiquement le drop [clindoeil])
- sans doute d'autres méthodes similaires, selon le langage utilisé
Selon ce que tu veux faire, il s'agit en réalité de définir la/les méthode(s) qui convien(nen)t pour que ton objet réagisse de manière adéquate[clindoeil] Modifié par koala01 le 23/05/2006 13:36 | | | | | will34 | Posté le 23/05/2006 à 13:49 | Petit astucien
3 Messages
| Pardon oui, je programme en C# avec le framework Microsoft .Net.
Quand je parle de System.Windows.Form.WebBrowser, il s'agit donc du winform webbrowser.
J'ai trouvé les méthodes DoDragDrop, OnDragDrop, ... ( http://msdn2.microsoft.com/fr-fr/system.windows.forms.webbrowser_members.aspx) mais bien qu'étant habitué aux listeners en Java, j'ai un peu du mal à transposer le mécanisme du drag and drop à C#.
| | | | | will34 | Posté le 23/05/2006 à 14:41 | Petit astucien
3 Messages
| J'ai trouvé mon bonheur sur http://support.microsoft.com/defau [...] #appliesto
En fait, la gestion des évenements avec le winform WebBrowser est un peu particulière et nécessite l'utilisation de l'interface d'événement Mshtml.HTMLDocumentEvents2_Event. Celle-ci permet ensuite de faire du MouseXXX
[code]mshtml.HTMLDocumentEvents2_Event iEvent;
iEvent.onmouseover += new mshtml.HTMLDocumentEvents2_onmouseoverEventHandler(MouseOverEventHandler);
[/code]
Ensuite à l'intérieur du "listener" (ou délégué, je ne connais pas la terminaison en C#) OnMouseOver(object sender, MouseOverEventArgs e), il faut faire appel à la méthode DoDragDrop du winform WebBrowser
Cordialement | | | |
| | Haut de la page |
| | Inscrivez-vous ! |
- Posez vos questions
- Résolvez vos problèmes
- Aidez les autres
- Participez et créez vos discussions
- Dialoguez en privé avec d'autres membres
- Suivez vos sujets préférés
- Affichez les signatures des membres
|
|