Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : DragDrop mais avec du texte ?! [ Archives Visual Basic / J'AI BESOIN D'AIDE !!!! :) ] (azerty25)

mercredi 17 mars 2004 à 18:34:58 | DragDrop mais avec du texte ?!

azerty25

Salut all

Je voudrai "draguer" (...) un texte, qui provien par exemple d'internet explorer sur mon app mais a ce que j'ai vu, le drag ne peux prendre que des fichiers (OLE DragDrop). Avez une une solution?

== @Z3RtY25 ==

mercredi 17 mars 2004 à 22:41:03 | Re : DragDrop mais avec du texte ?!

Xav88

Salut,
Ce code n'est pas de moi mais en tout cas tu peut draguer du texte dedans à partir d'internet explorer entre autre...



Option Explicit

Private Declare Function RegisterClipboardFormat Lib "user32.dll" Alias "RegisterClipboardFormatA" (ByVal lpszFormat As String) As Integer
Dim MonFormat As Integer

'---- Initialisations
Private Sub Form_Load()
' Initialise les modes
' Glisser
txtSource.OLEDragMode = vbOLEDragAutomatic
txtDest.OLEDragMode = vbOLEDragManual
' Poser
txtSource.OLEDropMode = vbOLEDropAutomatic
txtDest.OLEDropMode = vbOLEDropManual

' Créé un format particulier
MonFormat = RegisterClipboardFormat("Chaîne codée")
End Sub

'---- Demande initiale des données
Private Sub txtSource_OLEStartDrag(Data As DataObject, AllowedEffects As Long)
' Texte de la source
Dim txt As String
txt = txtSource.SelText

' Supprime les données placées automatiquement
Data.Clear

' Construit un tableau de bytes pour les données :
' 1er caractère = nombre de caractères (limité à 255)
' caractères suivants : caractères de la chaîne, augmentés de 1 (codage)
Dim t() As Byte
ReDim t(1 To Len(txt) + 1) As Byte
Dim i, l
' Longueur
l = Len(txt)
' Limite à 255
If l > 255 Then l = 155
' Stocke la longueur
t(1) = l
' Ajoute les caractères +1
For i = 1 To l
t(i + 1) = Asc(Mid(txt, i, 1)) + 1
Next
' Donne le tableau construit pour le glisser-poser
Data.SetData t, MonFormat
End Sub

'---- Passage sur la destination
Private Sub txtDest_OLEDragOver(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single, State As Integer)
' Indique si le dépôt est possible
If Data.GetFormat(MonFormat) Then
' Copie ou déplacement, selon touche CTRL
Effect = IIf(Shift And vbCtrlMask, vbDropEffectCopy, vbDropEffectMove)
Else
' Refuse toute autres données (on pourrait laisser passer le texte...)
Effect = vbDropEffectNone
End If
End Sub

'---- Dépôt des dennées sur la destination
Private Sub txtDest_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim t() As Byte
Dim txt As String
Dim l As Integer
Dim i
' Les données sont-elles dans notre format ?
If Data.GetFormat(MonFormat) Then
' Indique si copie ou déplacement, pour le OLECompleteDrag qui suit
Effect = IIf(Shift And vbCtrlMask, vbDropEffectCopy, vbDropEffectMove)
' Récupère les données
t = Data.GetData(MonFormat)
' Longueur
l = t(1)
For i = 1 To l
' Place chaque octet dans la chaîne après l'avoir décodé (-1)
txt = txt & Chr(t(i + 1) - 1)
Next

' Met dans la sélection
txtDest.SelText = txt
End If
End Sub

'---- Fin du poser pour la source
Private Sub txtSource_OLECompleteDrag(Effect As Long)
' Si déplacement, supprime les données de la source
If Effect And vbDropEffectMove Then txtSource.SelText = ""
End Sub


Tu dois mettre 2 textbox : txtSource et txtDest

Voilà en espérant que ça t'aidera

Xavier

jeudi 18 mars 2004 à 11:22:30 | Re : DragDrop mais avec du texte ?!

azerty25

Sa fonctionne nickel, mici bicoup ;)

== @Z3RtY25 ==



Cette discussion est classé dans : texte, dragdrop


Répondre à ce message

Sujets en rapport avec ce message

Drag d'un fichier depuis l'explorer vers une zone Texte d'une feuille : help ! [ par GEDDi ] Question bete mais je ne sais pas comment faire :J'ai une feuille(Form1) avec une zone de Texte (Text1) et je veux 'Draguer'un fichier venant de l"exp ecrire dand un txt [ par Nic ] comment ecrire un texte dans un fichiers txt car je voudrais faire entrer un texte dans un textbox et en cliquant sur un bouton le faire inscrire dans Texte & Images [ par MEYS David ] Comment réaliser une page qui comprent du texte et des images similaire a worddans une feuille en vb6Comment convertir une image BMP en JPGComment enr Texte & Images [ par MEYS David ] Comment réaliser une page qui comprent du texte et des images similaire a worddans une feuille en vb6Comment convertir une image BMP en JPGComment enr Insérer du texte dans un textbox [ par phil ] Salut !J'ai un textbox,je suis a un endroit donne dans le contenu du textbox (exemple : en plein milieu).Je clique sur un bouton et je veux qu'a l'end Enregistrement d'un fichier texte [ par JCLK ] J'utilise cette commande pour enregistrer un fichier texte, mais il y a un problème : des guillemets s'affichent au début et à la fin du texte. Commen Manipulation des données dans un texte !! [ par beber ] debutant 100% voir plus !Recherche comment ouvrir un fichier contenant des variables X et Y d'une fonction. Puis d'arriver sous VB à les recuperer pou Gestion de caractères d'un fichier texte avec VB [ par pedro ] Hello tout le monde .Je recherche les sources d'un programme qui permet de lire un fichier texte .Les données lu dans ce fichier doivent pouvoir etre Datagrid [ par Christophe ] Lorsque je saisie un texte dans un TextBox avec un retour chariot (touche ENTREE), et qu'ensuite je le copie dans un datagrid.A la place du retour cha


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,406 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.