IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Accepter le drag&drop d'une URL dans une TextBox


Sujet :

VB.NET

  1. #21
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 125
    Par défaut
    Ca progresse (grace à vous !)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      Private Sub TextBox1_DragOver ( [...] ) Handles TextBox1.DragOver
            Dim Drop_Valide As Boolean = False
            For Each f As String In e.Data.GetFormats
                If f = "UniformResourceLocator" Then
                    Drop_Valide = True
                End If
            Next
            If Drop_Valide Then
                e.Effect = DragDropEffects.Copy
            End If
    End Sub
    Ca marche bien, mais ce n'est pas encore parfait :
    Si j'essaie de droper un fichier, le curseur reste à Interdit. Si j'essaie ensuite de droper une URL, le curseur change. Jusque là, c'est tout bon.
    Par contre, si je ne drop pas, puis que je ressors, et que je reessaye de droper un fichier, le curseur ne se remet pas à Interdiction.
    Je vais voir s'il ne faut pas passer la variable Drop_Valide en globale, et la remettre à False à chaque fois qu'il y a un DragLeave.
    En gros, jouer avec les procédures DragEnter et DragLeave.

    Je vous tiens au courant...

  2. #22
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    Citation Envoyé par jjcasalo Voir le message
    e vais voir s'il ne faut pas passer la variable Drop_Valide en globale, et la remettre à False à chaque fois qu'il y a un DragLeave.
    oui exactement, sinon ta variable conserve l'état du DragOver.

  3. #23
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 125
    Par défaut
    C'est bon, j'ai trouvé d'où venait le problème. La variable Drop_Valide était bien réinitialisèe à False dans le DragOver, mais par contre, la "propriété" DragDropEffects était toujours à Copy. J'ai donc initialisé à None lors du DragOver.
    Et ça fonctionne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
       Private Sub TextBox1_DragOver( [...] ) Handles TextBox1.DragOver
     
            Dim s As String = ""
            Dim Drop_Valide As Boolean = False
            ' Il faut remettre l'objet TextBox en mode refus de Drop par défaut
            e.Effect = DragDropEffects.None
     
            For Each f As String In e.Data.GetFormats
                If f = "UniformResourceLocator" Then
                    Drop_Valide = True
                End If
            Next
     
            ' On autorise le Drop uniquement si l'objet en cours de Drag est du type URL.
            If Drop_Valide Then
                e.Effect = DragDropEffects.Copy
            End If
     
        End Sub
    Un grand merci à cybermaxs et Pol63 pour leur aide.

    En espérant que ce sujet puisse servir à d'autres.

  4. #24
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    826
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 826
    Par défaut
    ouf !

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  2. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  3. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo