Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291

    VB6 - PictureBox e immagine.

    Salve a tutti.
    Come posso fare affinché un'immagine assuma le stesse dimensioni di un controllo PictureBox che la contiene?
    In altri termini, con il codice faccio variare le dimensioni del controllo PictureBox, vorrei che caricando l'immagine questa assumesse le dimensioni del relativo controllo (in effetti si tratta di far variare le dimensioni dell'immagine, almeno penso ... )
    Grazie per la collaborazione.
    LM

  2. #2
    per far variare le dimesioni dell'immagine si potrebbe utilizzare questa istruzione

    Picture1.PaintPicture Picture1.Picture, 0, 0, Heigth(richiesta), Width(richiesta)

    a me invece interessa sapere come faccio a conoscere le dimensioni dell'immagine, per adeguare la picturebox alla stessa..

    non vorrei dire cavolate... una conferma per ciò che ho detto

  3. #3
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    LisseiBlu, grazie della risposta.
    Funziona se aumento la risoluzione, se la diminuisco la lunghezza va bene mentre l'altezza dell'immagine è più piccola ! E' un giorno che provo e riprovo, c'é qualcosa che mi sfugge ... Help !
    Per quanto riguarda il tuo problema, simile al mio, la tecnica (non so se valida...) é quella di fare un'immagine temporanea, ne prendi le dimensioni e poi fai il controllo.
    codice:
    'Adatta l'immagine al nuovo controllo PictureBox:
            Dim picTemp As VB.PictureBox
            Dim c As Control
                For Each c In Form1.Controls
                    'Controlla che si tratti di una PictureBox e che la ris. larghezza
                    'del controllo sia diversa di quella di sviluppo:
                    If TypeOf c Is PictureBox And (sngLAtt <> sngL) And btLoad = 0 Then
                        'PictureBox temporanea:
                        Set picTemp = Form1.Controls.Add("VB.PictureBox", "picTemp")
                        'La PictureBox temporanea assume le dimensioni del controllo:
                        picTemp.Width = c.Width
                        picTemp.Height = c.Height
                        picTemp.AutoRedraw = True
                        'Disegna l'immagine sulla PictureBox Temporanea
                        'tenuto conto delle nuove dimensioni del controllo Pic:
                        picTemp.PaintPicture Picture1.Picture, 0, 0, (picTemp.Width), (picTemp.Height)
                        'Carica l'immagine grafica nella PictureBox:
                        c.Picture = LoadPicture()
                        c.Picture = picTemp.Image
                        'Rimuove l'immagine temporanea:
                        Form1.Controls.Remove picTemp
                        btLoad = 1
                    End If
                Next
        End If
    LM

  4. #4
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Per cortesia date un'occhiata al codice su esposto, dato che:

    Funziona se aumento la risoluzione, se la diminuisco la lunghezza va bene mentre l'altezza dell'immagine è più piccola ! E' un giorno che provo e riprovo, c'é qualcosa che mi sfugge ... Help !
    Grazie.
    LM

  5. #5
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Ho risolto.
    Il codice postato funziona, era una questione di priorità delle SubRoutine.
    Grazie comunque.
    LM

  6. #6
    sto provando a utilizzare questa procedura ma non riesco a capirla fino in fondo:

    nella riga:
    If TypeOf c Is PictureBox And (sngLAtt <> sngL) And btLoad = 0 Then

    le variabili "sngLAtt", "sngL", "btLoad" cosa sono e che valori contengono?

  7. #7
    Originariamente inviato da LisseiBlu

    a me invece interessa sapere come faccio a conoscere le dimensioni dell'immagine, per adeguare la picturebox alla stessa..

    non vorrei dire cavolate... una conferma per ciò che ho detto
    Basta settare la proprieta' Autosize della PictureBox a True..

    Tutto qui!!
    Life is too short to spend it hoping or crying...JUST LIVE IT!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.