[vb.net 2005] - Création & Récupération de propriété

Signaler
Messages postés
438
Date d'inscription
samedi 24 mai 2003
Statut
Membre
Dernière intervention
23 janvier 2011
-
Messages postés
438
Date d'inscription
samedi 24 mai 2003
Statut
Membre
Dernière intervention
23 janvier 2011
-
Bonsoir à tous<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>







Franchement merci aux personnes qui me répondront pcq je suis en panique







total !!!







Sa doit être tout simple, une petit bout de ligne de code mais j'arrive pas







à voir comment







je l’ai poster à nombreuse reprise un peu partout, mais sans résultat :(







Voici mon petit problème :







Je voulais insérer une image dans un Richtextbox tout simplement







et j'ai voulu rajouter une propriété "Emplacement" (qui enregistrerai







l’emplacement de l’image qui à été insérer) que l’on pourrait récupéré à tous moment.








 







D’abord une classe générale (avec ma nouvelle propriété) :








 







Public Interface Element







Property Emplacement() As String







End Interface








 







Puis propre à l’objet image :








Imports
System.ComponentModel









<Serializable()> PublicMustInheritClass IMGElement










   
Implements Element










   
Dim _sEmplacementImG AsString = ""










   
Dim ImG AsNew System.Drawing.Rectangle









 









   
Public
Property EmplacementImG() AsStringImplements Element.Emplacement










       
Get











           
Return _sEmplacementImG










       
End
Get











       
Set(ByVal value AsString)










            _sEmplacementImG = value










       
End
Set











   
End
Property










End

Class










 







Ensuite la class qui définit l’ajout dans le Richtextbox de l’élément :








 







Public Class RectangleSimple







Inherits IMGElement







Public Sub add_pictures_to_rtb(ByVal pic As Image, ByVal rtb As RichTextBox,







ByVal index As Integer)







Dim a As Integer







Dim b As Integer







Dim tmpobj As Object







tmpobj = Clipboard.GetDataObject







Clipboard.SetDataObject(pic)







a = rtb.SelectionStart







b = rtb.SelectionLength







rtb.SelectionLength = 0







rtb.SelectionStart = index







rtb.Paste()







Clipboard.SetDataObject(tmpobj)







If index >= a Then a += 1







rtb.SelectionStart = a







rtb.SelectionLength = b







End Sub







End Class








 







Et pour terminer le code qui insérera l’élément à l’aide d’une boite de







dialogue (sur un événement bouton) :







Private Sub BtnInsertImg_Click(ByVal sender As System.Object, ByVal e As







System.EventArgs) Handles BtnInsertImg.Click







Try







Dim a As New RectangleSimple ()







Dim OpenFiles As New OpenFileDialog








 







OpenFiles.Filter = "Tous les Fichiers (*.*)|*.*"








 







OpenFiles.FilterIndex = 2







OpenFiles.RestoreDirectory = True







OpenFiles.Title = "Inserer une image"








 







If OpenFiles.ShowDialog = Windows.Forms.DialogResult.OK Then







a.EmplacementImG = OpenFiles.FileName







a.add_pictures_to_rtb(New Bitmap(OpenFiles.FileName), Richtextbox,







Richtextbox.SelectionStart)







End If








 







Catch ex As Exception







MessageBox.Show("Impossible d'inserer cette image !", MessageBoxButtons.OK,







MessageBoxIcon.Warning)







End Try







End Sub








 







Donc j’ai créé ma propriété EmplacementImG. J’ai affecté la valeur de cette







propriété par l’emplacement d’origine de l’image quand l’on clique sur OK de







la boite de dialogue " Inserer une image".








 







Le problème c’est que je n’arrive pas à récupéré cette propriété lorsque







l’utilisateur sélectionne une image.







=> Un Object (Class image) créer dans un autre objet (richtextbox) ! Comment







faire ???? Je crack j'ai passer trop de nuit & d'heure dessus et je n'arrive







pas a comprendre comment récupéré cette valeur !!








 







Sa doit etre tout béte à mon avis ...








 







Merci par avance en tout cas, à celui ou celle qui m’aidera

2 réponses

Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Statut
Membre
Dernière intervention
15 septembre 2009
4
Salut,


en faisant RichTextBox1.Controls tu dois retrouver tous les contrôles contenus dans ta richtextbox...
A moins qu'il ne reconnaisse pas ton image comme un contrôle du fait qu'il s'agisse d'une classe que tu as toi même implémentée... dans ce cas, je ne sais âs comment tu y accèder





<hr />

@+  
Messages postés
438
Date d'inscription
samedi 24 mai 2003
Statut
Membre
Dernière intervention
23 janvier 2011

C'est une classe que j'ai implenter moi-même...
Merci quand même ;)