cs_Aarna
Messages postés4Date d'inscriptionlundi 20 juin 2005StatutMembreDernière intervention11 mars 2006
-
10 mars 2006 à 20:09
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
11 mars 2006 à 19:15
Comment faire une PictureBox avec des propriétés supplémantaires ?
Je suis débutant et je m'interroge
Je fais des picturebox avec Picture que je drag drop sur une autre picturebox vide sur laquelle je récupére la Picture de la source :
Private Sub Picture1_DragDrop(Index As Integer, Source As Control, X As Single, Y As Single)
Picture1.Item(Index).Picture = Source.Picture
End Sub
Mais à chaque PictureBox je veux associer des infos en plus (des propriétés supplémentaires) comme du texte etc. (Je peux pas utiliser .Tag car besoin de plusieurs propriétés)
J'ai essayé de créer un usercontrol avec ce que j'ai besoin + Picture mais là mon code ci-dessus ne fonctionne plus : monusercontrol1.Picture = LoadPicture("img.gif") me dit "Utilisation incorrecte de la propriété".
J'ai essayé d'associer un nouvelle classe d'objet avec mes propriétés à mes PictureBox mais je ne sais pas comment faire pour la méthode .Item : MonObjet.Item(Index).Picture = Source.Picture ->Comprend pas Item
Qui peux m'aider ? Please
A voir également:
Comment faire une PictureBox avec des propriétés supplémentaires ?
MsgBox "image clické, la valeur suplémentaire est : '" & cPicBox.Maprop & "'"
End Sub
'
'
Private Sub cPicBox_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
' mouse move renvoyé par la classe
Me.Cls
Me.Print "X " & X & " Y " & Y
End Sub
'---------------
' MaClasse.cls
'---------------
'
'
Option Explicit
'
Private mvarMaprop As String 'propriété ajoutée
Private mvarMapropType As String 'propriété ajoutée
'
Private WithEvents mvarPicture As PictureBox 'objet réel
'
'
Public Event Click()
Public Event DblClick()
Public Event MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Public Event Paint()
Public Event Resize()
'
'
Public Property Get Picture() As PictureBox
Set Picture = mvarPicture
End Property
Public Property Set Picture(ByVal vData As PictureBox)
Set mvarPicture = vData
End Property
'
'
Public Property Get MapropType() As String
MapropType = mvarMapropType
End Property
Public Property Let MapropType(ByVal vData As String)
mvarMapropType = vData
End Property
'
'
Public Property Get Maprop() As String
Maprop = mvarMaprop
End Property
Public Property Let Maprop(ByVal vData As String)
mvarMaprop = vData
End Property
'
'
'
Private Sub Class_Terminate()
Set mvarPicture = Nothing
End Sub
'
'
'
Private Sub mvarPicture_Change()
'
End Sub
Private Sub mvarPicture_Click()
RaiseEvent Click
End Sub
Private Sub mvarPicture_DblClick()
RaiseEvent DblClick
End Sub
Private Sub mvarPicture_DragDrop(Source As Control, X As Single, Y As Single)
'
End Sub
Private Sub mvarPicture_DragOver(Source As Control, X As Single, Y As Single, State As Integer)
'
End Sub
Private Sub mvarPicture_GotFocus()
'
End Sub
Private Sub mvarPicture_KeyDown(KeyCode As Integer, Shift As Integer)
'
End Sub
Private Sub mvarPicture_KeyPress(KeyAscii As Integer)
'
End Sub
Private Sub mvarPicture_KeyUp(KeyCode As Integer, Shift As Integer)
'
End Sub
Private Sub mvarPicture_LinkClose()
'
End Sub
Private Sub mvarPicture_LinkError(LinkErr As Integer)
'
End Sub
Private Sub mvarPicture_LinkNotify()
'
End Sub
Private Sub mvarPicture_LinkOpen(Cancel As Integer)
'
End Sub
Private Sub mvarPicture_LostFocus()
'
End Sub
Private Sub mvarPicture_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
'
End Sub
Private Sub mvarPicture_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
RaiseEvent MouseMove(Button, Shift, X, Y)
End Sub
Private Sub mvarPicture_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
'
End Sub
Private Sub mvarPicture_OLECompleteDrag(Effect As Long)
'
End Sub
Private Sub mvarPicture_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
'
End Sub
Private Sub mvarPicture_OLEDragOver(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single, State As Integer)
'
End Sub
Private Sub mvarPicture_OLEGiveFeedback(Effect As Long, DefaultCursors As Boolean)
'
End Sub
Private Sub mvarPicture_OLESetData(Data As DataObject, DataFormat As Integer)
'
End Sub
Private Sub mvarPicture_OLEStartDrag(Data As DataObject, AllowedEffects As Long)
'
End Sub
Private Sub mvarPicture_Paint()
RaiseEvent Paint
End Sub
Private Sub mvarPicture_Resize()
RaiseEvent Resize
End Sub
Private Sub mvarPicture_Validate(Cancel As Boolean)
cs_Aarna
Messages postés4Date d'inscriptionlundi 20 juin 2005StatutMembreDernière intervention11 mars 2006 11 mars 2006 à 15:28
Salut et merci pour la réponse ... mais je comprends que dalle. Je m'excuse mais je débute en VB. Si tu avais un exemple je serai obligé de faire quelques courbettes devant mon écran !
Voilà ce que j'ai fait comme classe : Maclasse
Private mvarMaprop As String 'copie locale
Private mvarMapropType As String 'copie locale
Private WithEvents mvarPicture As PictureBox 'copie locale
Public Property Let Picture(ByVal vData As PictureBox)
mvarPicture = vData
End Property
Public Property Get Picture() As PictureBox
Picture = mvarPicture
End Property
Public Property Let MapropType(ByVal vData As String)
mvarMapropType = vData
End Property
Public Property Get MapropType() As String
MapropType = mvarMapropType
End Property
Public Property Let Maprop(ByVal vData As String)
mvarMaprop = vData
End Property
Public Property Get Maprop() As String
Maprop = mvarMaprop
End Property
Mais quand je fais : MaClasse1.Picture = LoadPicture(App.Path & "\test\1.gif") j'ai "Utilisation incorrecte de la propriété".
cs_Aarna
Messages postés4Date d'inscriptionlundi 20 juin 2005StatutMembreDernière intervention11 mars 2006 11 mars 2006 à 18:35
C'est remoi
j'ai fait ça :
Private Sub cPicBox2_DragDrop(Source As Control, X As Single, Y As Single) cPicBox2.Picture.Picture Source.Picture 'Le DragDrop de Picture fonctionne (mais je deduis que Source c'est Picture1 car si c'était 'cPicBox1 j'aurai dû écrire cPicBox2.Picture.Picture Source.Picture.Picture)
cPicBox2.Maprop = Source.Maprop 'forcement ça marche pas car Picture1 ne connait pas Maprop !