begin process at 2010 03 21 17:01:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

DragDrop mais avec du texte ?!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

DragDrop mais avec du texte ?!

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ée 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...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales