Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di Nico
    Registrato dal
    Apr 2002
    Messaggi
    458

    [VB] Saltare gli errori e misurare le immagini

    Ragazzi sto facendo un programmino stupido tipo quelli della kodak che servono per avere una galleria di foto...Vengo subito al dunque dicendo che ho 356 foto numerate. Il programma funziona a meraviglia ma...guarda un po' te, visto che ne hanno scartate alcune, ci sono dei buchi! Come faccio a fare in modo che se ne freghi dell'errore e vada avanti? Non con "On Error Resume Next" o "On Error Go To" perchè non funziona. La procedura che aggiorna le foto è questa:
    (badate al fatto che le foto cominciano dalla "Dsc01048.jpg")

    codice:
    Private Sub Aggiorna()
    
    Set Img.Picture = LoadPicture(App.Path & "\Fotografie\Dsc0" & i & ".jpg")
    Img.Left = Screen.Width / 2 - (Img.Width / 2)
    Img.Top = Screen.Height / 2 - (Img.Height / 2) - 800
    Img.ToolTipText = "Immagine " & i - 1047 & "; Dsc0" & i & ".jpg"
    lblfoto.Caption = "Foto " & i - diff & " / " & Num
    
    End Sub
    la variabile i è determinata dagli eventi Click del mouse sulle immagini "next" e "back" oppure da un timer (nel caso della presentazione automatica).
    Si, potrei mettere un Select Case in cui inserire tutti i buchi...per esempio ho messo un if i = x Then i = x+1, o x-1 a dipendenza. Solo che dovrei inserirlo varie volte e per tutti i buchi e in più, nel label chiamato lblfoto, si noterebbe che ci sono dei buchi....

    Aiuto! come posso fare?
    Forse esiste un modo semplice per rinumerare tutte le foto in ordine?!?!?

    Seconda domanda: (miiii che post luuuungo!)
    Ci sono foto orizzontali e verticali...e le devo già rimpicciolire per farcele stare nel form,...quindi la img ha stretch=true.
    Come faccio a misurare la grandezza in pixel o twips delle foto PRIMA di caricarle? (se possibile....)

    Graaazie

  2. #2
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387
    Le modifiche sono in neretto
    codice:
    Private Sub Aggiorna()
    if dir(App.Path & "\Fotografie\Dsc0" & i & ".jpg")><"" then
       Set Img.Picture = LoadPicture(App.Path & "\Fotografie\Dsc0" & i & ".jpg")
       Img.Left = Screen.Width / 2 - (Img.Width / 2)
       Img.Top = Screen.Height / 2 - (Img.Height / 2) - 800
       Img.ToolTipText = "Immagine " & i - 1047 & "; Dsc0" & i & ".jpg"
       lblfoto.Caption = "Foto " & i - diff & " / " & Num
    end if
    End Sub
    Per quanto riguarda la seconda domanda, io farei una cosa molto semplice:
    -Inserisci una img e la imposti su visible = false e strech = false.
    -Carichi l'immagine che ti interessa qui dentro
    -Verifichi la prop. img.width e img.height

    Penso si possa fare anche via API, ma questa e' la prima cosa che mi e' saltata in mente.
    Ciao.
    ...and I miss you...like the deserts miss the rain...

  3. #3
    Utente di HTML.it L'avatar di Nico
    Registrato dal
    Apr 2002
    Messaggi
    458
    Adesso non ho tempo di provare ma solo per risponderti...
    innanzitutto non ci ho capito un H della prima risposta Ma pazienza, la provo appena ne ho il tempo.
    Per la seconda questione era venuta in mente anche a me quella soluzione, ma ho pensato che ci fosse una specie di sfarfallio, cioè che prima si vede l'immagine grande e poi rimpicciolita...però devo provarci...potrei anche creare un img nascosta nela quale carico le immagini e le misuro prima di farle vedere...però sono jpg da più di 500kb e va già un po' lentino...
    Mi interesserebbe la questione delle API, mi informerò

    Grazie

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 © 2024 vBulletin Solutions, Inc. All rights reserved.