Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Definir une picturebox avec des lignes de programme sous VB6

3 réponses
Avatar
Arnaud
Salut à tous


Comment creer de facon la plus simple possible avec des lignes de programme
une "picturebox" dans une autre autre picturebox pré-déssinée avec les
outils VB6 ?

Puis comment effacer cette picturebox également avec des lignes de programme
?

Cordialement

Arnaud

3 réponses

Avatar
Jacques93
Bonjour Arnaud,
Arnaud a écrit :
Salut à tous


Comment creer de facon la plus simple possible avec des lignes de programme
une "picturebox" dans une autre autre picturebox pré-déssinée avec les
outils VB6 ?

Puis comment effacer cette picturebox également avec des lignes de programme
?




Par exemple, en créant sur la feuille 2 PictureBox (Picture1 et Picture2)
, puis en assignant à Picture2 un index = 0. Ensuite, par code tu
pourras charger, décharger des 'Items' de ce tableau de contrôle.

Pour que cette PictureBox deviennent fille de la première, il y a l'API
'SetParent' :

<http://msdn.microsoft.com/en-us/library/ms633541(VS.85).aspx>

Un petit bout de code minimaliste, à adapter :

Option Explicit
Private Declare Function SetParent Lib "user32" _
(ByVal hWndChild As Long, _
ByVal hWndNewParent As Long) As Long

' Nombre d'élément dans le tableau de contrôles Pictures
Dim IPic2 As Integer


Private Sub Form_Load()
With Me.Picture1
.BackColor = vbBlue
End With
With Me.Picture2(0)
.Visible = False
End With
IPic2 = 0
End Sub

' Charge une PictureBox Fille
Private Sub Command1_Click()
IPic2 = IPic2 + 1
Load Picture2(IPic2)
With Me.Picture2(IPic2)
.Visible = True
.BackColor = vbRed
.Top = 300
.Height = Me.Picture1.Height - 600
.Left = 300
.Width = Me.Picture1.Width - 600
SetParent .hWnd, Me.Picture1.hWnd
End With
End Sub

' Décharge la dernière PictureBox Fille
Private Sub Command2_Click()
Unload Picture2(IPic2)
IPic2 = IPic2 - 1
End Sub




--

Cordialement,

Jacques.
Avatar
Arnaud
Merci

Je vais essayer d'appliquer ca concretement ;o)

Cordialement

Arnaud

"Jacques93" a écrit dans le message de news:

Bonjour Arnaud,
Arnaud a écrit :
Salut à tous


Comment creer de facon la plus simple possible avec des lignes de
programme une "picturebox" dans une autre autre picturebox pré-déssinée
avec les outils VB6 ?

Puis comment effacer cette picturebox également avec des lignes de
programme ?




Par exemple, en créant sur la feuille 2 PictureBox (Picture1 et Picture2)
, puis en assignant à Picture2 un index = 0. Ensuite, par code tu pourras
charger, décharger des 'Items' de ce tableau de contrôle.

Pour que cette PictureBox deviennent fille de la première, il y a l'API
'SetParent' :

<http://msdn.microsoft.com/en-us/library/ms633541(VS.85).aspx>

Un petit bout de code minimaliste, à adapter :

Option Explicit
Private Declare Function SetParent Lib "user32" _
(ByVal hWndChild As Long, _
ByVal hWndNewParent As Long) As Long

' Nombre d'élément dans le tableau de contrôles Pictures
Dim IPic2 As Integer


Private Sub Form_Load()
With Me.Picture1
.BackColor = vbBlue
End With
With Me.Picture2(0)
.Visible = False
End With
IPic2 = 0
End Sub

' Charge une PictureBox Fille
Private Sub Command1_Click()
IPic2 = IPic2 + 1
Load Picture2(IPic2)
With Me.Picture2(IPic2)
.Visible = True
.BackColor = vbRed
.Top = 300
.Height = Me.Picture1.Height - 600
.Left = 300
.Width = Me.Picture1.Width - 600
SetParent .hWnd, Me.Picture1.hWnd
End With
End Sub

' Décharge la dernière PictureBox Fille
Private Sub Command2_Click()
Unload Picture2(IPic2)
IPic2 = IPic2 - 1
End Sub




--

Cordialement,

Jacques.


Avatar
Arnaud
Mille mercis ca marche ;o)

Cordialement

Arnaud

"Jacques93" a écrit dans le message de news:

Bonjour Arnaud,
Arnaud a écrit :
Salut à tous


Comment creer de facon la plus simple possible avec des lignes de
programme une "picturebox" dans une autre autre picturebox pré-déssinée
avec les outils VB6 ?

Puis comment effacer cette picturebox également avec des lignes de
programme ?




Par exemple, en créant sur la feuille 2 PictureBox (Picture1 et Picture2)
, puis en assignant à Picture2 un index = 0. Ensuite, par code tu pourras
charger, décharger des 'Items' de ce tableau de contrôle.

Pour que cette PictureBox deviennent fille de la première, il y a l'API
'SetParent' :

<http://msdn.microsoft.com/en-us/library/ms633541(VS.85).aspx>

Un petit bout de code minimaliste, à adapter :

Option Explicit
Private Declare Function SetParent Lib "user32" _
(ByVal hWndChild As Long, _
ByVal hWndNewParent As Long) As Long

' Nombre d'élément dans le tableau de contrôles Pictures
Dim IPic2 As Integer


Private Sub Form_Load()
With Me.Picture1
.BackColor = vbBlue
End With
With Me.Picture2(0)
.Visible = False
End With
IPic2 = 0
End Sub

' Charge une PictureBox Fille
Private Sub Command1_Click()
IPic2 = IPic2 + 1
Load Picture2(IPic2)
With Me.Picture2(IPic2)
.Visible = True
.BackColor = vbRed
.Top = 300
.Height = Me.Picture1.Height - 600
.Left = 300
.Width = Me.Picture1.Width - 600
SetParent .hWnd, Me.Picture1.hWnd
End With
End Sub

' Décharge la dernière PictureBox Fille
Private Sub Command2_Click()
Unload Picture2(IPic2)
IPic2 = IPic2 - 1
End Sub




--

Cordialement,

Jacques.