+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 8 su 8

Caricare file immagine in modo alternato

  1. #1
    Cis
    Cis non è in linea Scribacchino
    Vi riporto il codice che utilizzo per caricare file jpg o bmp in un controllo immagine.
    Tenete conto che ho due controlli Image3 ed Image4, con il codice che utilizzo carico solo il file nel controllo Image3 , volevo chiedervi la cortesia di indicarmi in che modo potrei fare per far si che io possa caricare il file (bmp o jpg) una volta nel controllo image3 e una volta nel controllo Image4, cioe in modo alternato:

    Private Sub Dir1_Change()
        File1.Path = Dir1.Path
    End Sub
    
    Private Sub Drive1_Change()
        On Error GoTo DriveHandler
        Dir1.Path = Drive1.Drive
        Exit Sub
    
      DriveHandler:
        Drive1.Drive = Dir1.Path
        Exit Sub
        Dir1.Path = Drive1.Drive
    End Sub
    
    Private Sub File1_Click()
        Temp = Right$(File1.FileName, 3)
        dropfile = File1.Path & "\" & File1.FileName
        Select Case Temp
        Case "jpg"
        Image3.Picture = LoadPicture(dropfile)
    
        Case "bmp"
        Image3.Picture = LoadPicture(dropfile)
    
        Case Else
        msg = "Non hai selezionato nessun file Immagine"
        MsgBox msg
        End Select
    End Sub
    


    Vi ringrazio al solito del vostro aiuto anticipatamente.

    Ciao CIS;

  2. #2
    L'avatar di TheTruster
    TheTruster non è in linea Moderatore Globale Ultimo blog: Mouse Wheel in Visual Basic 6 - ActiveX
    usa una variabile booleana come switch:

    Private Sub File1_Click()
        Static Toggle As Boolean
    
        Temp = Right$(File1.FileName, 3)
        dropfile = File1.Path & "\" & File1.FileName
    
        Select Case Temp
    
            Case "jpg", "bmp"
                If Toggle Then
                    Image3.Picture = LoadPicture(dropfile)
                Else
                    Image4.Picture = LoadPicture(dropfile)
                End If
                Toggle = Not Toggle
    
            Case Else
                msg = "Non hai selezionato nessun file Immagine"
                MsgBox msg
    
        End Select
    
    End Sub
    
    TheTruster
    ℹ️ Leggi di più su TheTruster ...

  3. #3
    Cis
    Cis non è in linea Scribacchino
    Non sò come dirti ancora grazie della tua disponibilità, ti assicuro che senza il tuo aiuto non ci sarei mai arrivato.
    Provo il codice e in caso di problemi ti disturberò ancora.

    Permettetemi di aggiungere che senza professionisti come THETRUSTER e senza questo forum molti di noi sarebbero capaci di fare ben poco.


    Grazie ancora;

  4. #4
    E aggiungerei un DoEvents in questa posizione ...

    Toggle = Not Toggle
    DoEvents
    
    ℹ️ Leggi di più su AntonioG ...

  5. #5
    Cis
    Cis non è in linea Scribacchino
    Innanzitutto ringrazio anche ANTONIO per la sua disponibilità e professionalità, e vorrei chiedervi ancora un aiuto per lo stesso codice.
    Dove utilizzo questo codice i controlli Image sono inseriti in una PictureBox di una certa dimensione, questa pictureBox viene resa visibile con Un CommandButton3,
    vorrei fare in modo che se viene scelto il file bmp o jpg senza digitare il CommandButton3_click comparisse un messaggio che avverte che bisogna premere questo pulsante.
    Ho tentato con questo codice che vi riporto ma senza risultato.

    Private Sub File1_Click()
        Static Toggle As Boolean
    if picture1.width = 0 then
    msgBox("Seleziona pulsante ARCHIVIO FOTO")
    endif
        Temp = Right$(File1.FileName, 3)
        dropfile = File1.Path & "\" & File1.FileName
    
        Select Case Temp
    
            Case "jpg", "bmp"
                If Toggle Then
                    Image3.Picture = LoadPicture(dropfile)
                Else
                    Image4.Picture = LoadPicture(dropfile)
                End If
                Toggle = Not Toggle
    
            Case Else
                msg = "Non hai selezionato nessun file Immagine"
                MsgBox msg
    
        End Select
    
    End Sub
    
    
    
    Private Sub Command3_Click()
       Picture1.Width = 400
       Picture1.Height = 300
    End Sub
    
    Facendo in questo modo non si evidenzia nessun messaggio .
    Vi chiedo ancora una volta in che modo posso risolvere

    Grazie sempre.

    Ciao;

  6. #6
    L'avatar di TheTruster
    TheTruster non è in linea Moderatore Globale Ultimo blog: Mouse Wheel in Visual Basic 6 - ActiveX
    quando programmi, devi cercare di "metterti nei panni" del programma...

    devi controllare se la picture è visibile o no?... e allora perchè controlli la sua larghezza?!

    programmare in VB a volte è molto "discorsivo"... questo, ad esempio, dice testualmente: "se non è visibile la Picture1 mandami un messaggio":

    If Not Picture1.Visible Then
        MsgBox ("Seleziona pulsante ARCHIVIO FOTO")
    End If
    
    TheTruster
    ℹ️ Leggi di più su TheTruster ...

  7. #7
    Cis
    Cis non è in linea Scribacchino
    Ciao THETRUSTER ti chiarisco il problema, in effetti io ho inserito nella stessa form due PICTUREBOX indipendenti, ma nella stessa posizione del form (sovrapposte), in effetti attraverso una riproduco un filmato, attraverso l'altra carico delle immagini.
    Per fare in modo che le PictureBox non si sovrappongono faccio in Modo che quando attivo il filmato riduco l'altra PiCtureBox ,es. Con il Command1 (picture1.width = 300
    picture1.higth = 300 mentre Picture2.width = 0 Picture2.higth = 0 ) ,con il Command2 viceversa.

    Addesso con il codice che tu mi hai fornito vorrei fare in modo che quando seleziono il file immagine da caricare nei controlli Image3 e Image4 a loro volta inseriti in una Picture1, se quest'ultima non è delle dimensioni indicate ma è uguale a 0 deve darmi il messaggio.
    Spero di non aver creato confusione .

    Caio e grazie;

  8. #8
    Cis
    Cis non è in linea Scribacchino
    THETRUSTER ho risolto facendo riferimento al tuo consiglio, ho reso la proprietà visible della PictureBox false, ed ho scritto semplicemente:

    if picture1.visible = false then
              msgBox("Digita il pulsante ARCHIVIO IMMAGINI")
             endif
    
    In questo quando digito ARCHIVIO IMMAGINI la rendo Visible = TRUE


    Ciao e grazie ancora;

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Risposte: 1
    Ultimo Post: 13-12-2012, 09:12
  2. Caricare una immagine png in vb6
    Da Rex nel forum Visual Basic 6
    Risposte: 6
    Ultimo Post: 11-08-2011, 23:10
  3. caricare una immagine in form
    Da frisella nel forum Visual Basic 6
    Risposte: 9
    Ultimo Post: 05-02-2011, 19:38
  4. caricare immagine
    Da piratabobo nel forum Microsoft Word
    Risposte: 1
    Ultimo Post: 06-10-2006, 16:04
  5. Caricare un'immagine
    Da BASIC6 nel forum Visual Basic 6
    Risposte: 6
    Ultimo Post: 02-01-2006, 18:27