picturebox

Le
michael
Bonjour,
lorsque j'utilise la commande Picture1.Picture = LoadPicture(Path$ + ".jpg")
et que ma photo est trop grande je ne vois qu'une partie de la photo, y a
t'il moyen qu'elle s'ajuste a la picturebox??? ouje doit redimensionner
toutes mes photos en fonction de la taille de la picture box??
Je préfère être sur avant de toutes les refaire
merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacques93
Le #16352101
Bonjour michael,
michael a écrit :
Bonjour,
lorsque j'utilise la commande Picture1.Picture = LoadPicture(Path$ + ".jpg")
et que ma photo est trop grande je ne vois qu'une partie de la photo, y a
t'il moyen qu'elle s'ajuste a la picturebox??? ouje doit redimensionner
toutes mes photos en fonction de la taille de la picture box??
Je préfère être sur avant de toutes les refaire...
merci



Tu peux t'inspirer de ce fil du 2 juin dernier, initié par Patrice Henrio :


--

Cordialement,

Jacques.
Jacques93
Le #16352581
Jacques93 a écrit :
Bonjour michael,



[...]
Tu peux t'inspirer de ce fil du 2 juin dernier, initié par Patrice Henrio :





Un petit bout de code utilisant la méthode PaintPicture (Picture2), et
l'Api StrechtBlt (Picture3). L'image obtenue par PaintPicture semble
plus fidèle ... :

Option Explicit


' Valeurs du paramètre Raster Operation
' --------------------------------------
Private Const SRCAND As Long = &H8800C6
Private Const SRCCOPY As Long = &HCC0020
Private Const SRCERASE As Long = &H440328
Private Const SRCINVERT As Long = &H660046
Private Const SRCPAINT As Long = &HEE0086
Private Const NOTSRCCOPY As Long = &H330008
Private Const NOTSRCERASE As Long = &H1100A6
Private Const MERGEPAINT As Long = &HBB0226
Private Const DSTINVERT As Long = &H550009

Private Declare Function StretchBlt Lib "gdi32" ( _
ByVal hdc As Long, _
ByVal x As Long, _
ByVal y As Long, _
ByVal nWidth As Long, _
ByVal nHeight As Long, _
ByVal hSrcDC As Long, _
ByVal xSrc As Long, _
ByVal ySrc As Long, _
ByVal nSrcWidth As Long, _
ByVal nSrcHeight As Long, _
ByVal dwRop As Long) As Long


Private Sub Form_Load()
With Me.Picture1
.AutoSize = True
.AutoRedraw = True
.ScaleMode = vbPixels
.Visible = False
.Picture = LoadPicture("c:usersjacquespicturesfazer.jpg")
End With

With Me.Picture2
.AutoRedraw = True
.PaintPicture Me.Picture1.Picture, 0, 0, .Width, .Height
End With

With Me.Picture3
.AutoRedraw = True
.ScaleMode = vbPixels
StretchBlt .hdc, 0, 0, .ScaleWidth, .ScaleHeight, _
Me.Picture1.hdc, 0, 0, Me.Picture1.ScaleWidth, _
Me.Picture1.ScaleHeight, SRCCOPY
End With
End Sub



--

Cordialement,

Jacques.
michael
Le #16394831
Désolé pour la réponse tardive, mais je programme pas tous le temps...
merci pour tout, ca a l'air d'être bon! mais je dois encore me pencher
dessus...
bonne journée

"Jacques93" wrote:

Jacques93 a écrit :
> Bonjour michael,

[...]
> Tu peux t'inspirer de ce fil du 2 juin dernier, initié par Patrice Henrio :
>
> >

Un petit bout de code utilisant la méthode PaintPicture (Picture2), et
l'Api StrechtBlt (Picture3). L'image obtenue par PaintPicture semble
plus fidèle ... :

Option Explicit


' Valeurs du paramètre Raster Operation
' --------------------------------------
Private Const SRCAND As Long = &H8800C6
Private Const SRCCOPY As Long = &HCC0020
Private Const SRCERASE As Long = &H440328
Private Const SRCINVERT As Long = &H660046
Private Const SRCPAINT As Long = &HEE0086
Private Const NOTSRCCOPY As Long = &H330008
Private Const NOTSRCERASE As Long = &H1100A6
Private Const MERGEPAINT As Long = &HBB0226
Private Const DSTINVERT As Long = &H550009

Private Declare Function StretchBlt Lib "gdi32" ( _
ByVal hdc As Long, _
ByVal x As Long, _
ByVal y As Long, _
ByVal nWidth As Long, _
ByVal nHeight As Long, _
ByVal hSrcDC As Long, _
ByVal xSrc As Long, _
ByVal ySrc As Long, _
ByVal nSrcWidth As Long, _
ByVal nSrcHeight As Long, _
ByVal dwRop As Long) As Long


Private Sub Form_Load()
With Me.Picture1
.AutoSize = True
.AutoRedraw = True
.ScaleMode = vbPixels
.Visible = False
.Picture = LoadPicture("c:usersjacquespicturesfazer.jpg")
End With

With Me.Picture2
.AutoRedraw = True
.PaintPicture Me.Picture1.Picture, 0, 0, .Width, .Height
End With

With Me.Picture3
.AutoRedraw = True
.ScaleMode = vbPixels
StretchBlt .hdc, 0, 0, .ScaleWidth, .ScaleHeight, _
Me.Picture1.hdc, 0, 0, Me.Picture1.ScaleWidth, _
Me.Picture1.ScaleHeight, SRCCOPY
End With
End Sub



--

Cordialement,

Jacques.



Jacques93
Le #16394921
Bonjour michael,
michael a écrit :
Désolé pour la réponse tardive, mais je programme pas tous le temps...
merci pour tout, ca a l'air d'être bon! mais je dois encore me pencher
dessus...
bonne journée




Pas de problème, on ne maitrise pas toujours son emploi du temps :-)

--

Cordialement,

Jacques.
Publicité
Poster une réponse
Anonyme