Newsgroup: it.comp.lang.visual-basic
Titolo: Sto impazzendo.

Ragazzi, mi aiutate?
Allora, io il problema l'ho gia risolto, ma devo ammettere che è stato un colpo di fortuna, ma non ho ancora capito perchè funziona.
Allora. prima io usavo questo codice qui:
'CODICE FORM 2, CARICATO DAL FORM1 TRAMITE IL CLICK SU UN PULSANTE
Private Sub Form_Load()
    Form2.WindowState = vbMaximized
End Sub
 
Private Sub Form_Resize()
    ImMaginE.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
    Dim Immag As String
    Dim LarghezzaImmagine As Single
    Dim AltezzaImmagine As Single
    Immag = ("C:\WINDOWS\Desktop\Prova\IlSignoreDegliAnelli.jpg")
    VisualizzaImmagine Immag
    LarghezzaImmagine = ImMaginE.ScaleWidth
    AltezzaImmagine = ImMaginE.ScaleHeight
    ImMaginE.Move 0, 0, LarghezzaImmagine, AltezzaImmagine
End Sub
'CODICE FUNZIONE VISUALIZZAIMMAGINE
Public Sub VisualizzaImmagine(ByVal Imm As String)
    Dim Pic As Picture
    Dim WPic As Single
    Dim HPic As Single
    Set Pic = LoadPicture(Imm)
    WPic = Form2.ImMaginE.ScaleX(Pic.Width, vbHimetric, _ Form2.ImMaginE.ScaleMode)
    HPic = Form2.ImMaginE.ScaleY(Pic.Height, vbHimetric, _ Form2.ImMaginE.ScaleMode)
    If WPic > Form2.ImMaginE.ScaleWidth Or HPic > _ Form2.ImMaginE.ScaleHeight Then
        If WPic / Form2.ImMaginE.ScaleWidth > HPic / _ Form2.ImMaginE.ScaleHeight Then
            HPic = (Form2.ImMaginE.ScaleWidth * HPic) / WPic
            WPic = Form2.ImMaginE.ScaleWidth
        Else
            WPic = (Form2.ImMaginE.ScaleHeight * WPic) / HPic
            HPic = Form2.ImMaginE.ScaleHeight
        End If
    End If
Form2.ImMaginE.Cls
Form2.ImMaginE.PaintPicture Pic, 0, 0, WPic, HPic
End Sub
Lo scopo sarebbe quello di fare in modo che la picture box (Che in questo caso si chiama ImMaginE) sia grande quanto l'immagine in essa contenuta. Ho
provato a impostare AUTORESIZE, ma non ha funzionato in quanto, all'inizio, la picturebox è più grande dell'immagine, e non più piccola.
Invece, se provate a eseguire questo codice, non si ridimensiona niente. Anzi, si ridimensiona, ma non riesco a capire con che criterio... 
Mi dite dove diavolo sbaglio?????????????????????
Rischio di impazzire............  Mi sembra tutto giusto.......
Mah....... Sono proprio un brocco a programmare.........
P.S. Ditemi se è giusto quello che ho capito leggendo la guida: oggetto.height trova le dimensioni del contenitore, mentre oggetto.scaleheight trova
le dimensioni del contenuto del contenitor, in questo caso l'immagine. Sbaglio?
Grazie in anticipo a chiunque mi risponderà, ma anche a tutti quelli che mi sopportano..... :)
ByeZ!
Alkondor
****************************************
Per rispondere in e-mail, togliete le //
****************************************

> Mi dite dove diavolo sbaglio?????????????????????
Dichiari questo:
Public Const IMAGE_BITMAP As Long = 0
Public Const LR_LOADFROMFILE As Long = 10
Public Const LR_CREATEDIBSECTION As Long = 2000
Public Declare Function GetObject Lib "gdi32" Alias "GetObjectA" (ByVal
hObject As Long, ByVal nCount As Long, lpObject As Any) As Long
' Mancano le dichiarazioni dell'api DeleteObject e del il Type BITMAP.
Cercale nell'api viewer
____________
Dim infoBmp As BITMAP
Dim hImmagine As Long
Dim nomeFile As String
nomeFile = "C:\WINDOWS\Desktop\Prova\IlSignoreDegliAnelli.jpg"
hImmagine = LoadImage(0, nomeFile, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION
Or LR_LOADFROMFILE)
GetObject hImmagine, Len(infoBmp), infoBmp
ImMaginE.Move 0, 0, infoBmp.bmWidth * 15, infoBmp.bmHeight * 15
DeleteObject hImmagine