Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [vb6] slideshow

  1. #1

    [vb6] slideshow

    Salve a tutti,

    in vb6 con il codice qui sotto dal form1 carico una picture (autoresize) nel form2 (form a tutto
    schermo) ogni 5 secondi in modo da ottenere una slideshow (presentazione) carina.
    Non riesco tuttavia a centrare PICTURE1 nello schermo difatti inserendo il codice:

    frm2.PICTURE1.Move (Screen.Width - frm2.PICTURE1..Width) \ 2, (Screen.Height - frm2.PICTURE1..Height) \ 2

    all'interno di case in form1 o in change di picture1 del form2 le photo scompaiono. Come mai?

    Un'ultima cosa, sapreste indicarmi un metodo veloce per caricare un file midi come sottofondo
    musicale?

    Un grazie di cuore a chi vorrà\saprà aiutarmi



    CODICE FORM1:
    -------------

    Private Sub Timer1_Timer()
    Select Case scelta
    Case 1
    frm2.PICTURE1.Picture = LoadPicture(App.Path & "\Presentazione1\" & numero & ".jpg")
    'CENTRA NELLO SCHERMO:
    frm2.PICTURE1.Move (Screen.Width - frm2.PICTURE1..Width) \ 2, (Screen.Height - frm2.PICTURE1..Height) \ 2
    frm2.Show
    Case 2
    frm2.PICTURE1.Picture = LoadPicture(App.Path & "\Presentazione2\" & numero & ".jpg")
    frm2.PICTURE1.Move (Screen.Width - frm2.PICTURE1..Width) \ 2, (Screen.Height - frm2.PICTURE1..Height) \ 2
    frm2.Show
    Case 3
    MsgBox "In lavorazione!", vbExclamation, "Comando inesistente"
    End Select
    numero = numero + 1
    End Sub



    CODICE FORM2:
    -------------

    Private Sub Form_Load()
    'full screen:
    frm2.Width = Screen.Width
    frm2.Height = Screen.Height
    frm2.Left = 0
    frm2.Top = 0
    End Sub

  2. #2
    prova a mettere un
    frm2.refresh
    dopo ogni volta che la modifichi nel timer....
    ...e quando meno te lo aspetti potrebbe capitare qualcosa di bello, di più importante di quello che avevi programmato...

  3. #3
    Innanzitutto:
    codice:
    Private Sub Form_Load() 
    'full screen: 
    frm2.Width = Screen.Width 
    frm2.Height = Screen.Height 
    frm2.Left = 0 
    frm2.Top = 0 
    End Sub
    Questo lo puoi eliminare direttamente, esiste la proprietà apposta per visualizzare un Form a tutto schermo senza lavorare da codice. La proprietà è WindowState ed è da impostare su Maximized.

    Seconda cosa:
    codice:
    frm2.PICTURE1.Move (Screen.Width - frm2.PICTURE1..Width) / 2, (Screen.Height - frm2.PICTURE1..Height) / 2
    Non esistono doppi punti in VB a meno che non si tratti di una stringa. Inoltre inserisci il codice nella proprietà Resize della Picture
    codice:
    Private Sub Picture1_Resize()
        Picture1.Move (Me.Width - Picture1.Width) / 2, (Me.Height - Picture1.Height) / 2
    End Sub
    Per quanto riguarda i MIDI esistono le API che adesso purtroppo non ho sottomano...

    Ciao
    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

  4. #4
    Private Sub Picture1_Resize()
    Picture1.Move (Me.Width - Picture1.Width) / 2, (Me.Height - Picture1.Height) / 2
    End Sub

    ho fatto come dite ma niente da fare la picture invece di spostarsi al centro non si vede più.
    Ho anche provato form2.refresh e picture1.refresh ma niente.

    :dhò:

  5. #5
    prova a controllare i valori delle coordinate che usi per centrare.....
    ...e quando meno te lo aspetti potrebbe capitare qualcosa di bello, di più importante di quello che avevi programmato...

  6. #6
    Originariamente inviato da ornella_r
    ho fatto come dite ma niente da fare la picture invece di spostarsi al centro non si vede più.
    Ho anche provato form2.refresh e picture1.refresh ma niente.
    Non è che per caso hai cambiato le unità di misura della Form?
    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

  7. #7
    grazie a tutti,

    ho rifatto tutto dall'inizio ed ora funziona, evidentemente c'era un errore nascosto da qualche parte.

    Grazie ancora dell'aiuto

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.