Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - immagine di sfondo nel form?
Forum - C# / VB.NET - immagine di sfondo nel form?

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
Master_VB (Normal User)
Pro


Messaggi: 148
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 10:45
Venerdì, 10/07/2009
ciao a tutti nel mio programmino ho messo un'opzione che permette di cambiare sfondo al form ma come faccio a tornare a quello originale che c'era all'inizio? certo voi direte prendi al directory corrente dai il nome all'immagine che c'era in modo da rimetterlo con un tasto tipo "torna allos fondo originale",però questo non è possibile perchè non ho l'immagine originale perchè l'ho persa e non è neanche importata nel progetto perchè l'avevo importata come risorsa locale quindi? come posso fare? infatti nell'opzione bacjgroundimage del mio form ora c'è scritto questo: System.Drawing.Bitmap. Quindi come posso fare?

PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 10:51
Venerdì, 10/07/2009
Testo quotato

Postato originariamente da Master_VB:

ciao a tutti nel mio programmino ho messo un'opzione che permette di cambiare sfondo al form ma come faccio a tornare a quello originale che c'era all'inizio? certo voi direte prendi al directory corrente dai il nome all'immagine che c'era in modo da rimetterlo con un tasto tipo "torna allos fondo originale",però questo non è possibile perchè non ho l'immagine originale perchè l'ho persa e non è neanche importata nel progetto perchè l'avevo importata come risorsa locale quindi? come posso fare? infatti nell'opzione bacjgroundimage del mio form ora c'è scritto questo: System.Drawing.Bitmap. Quindi come posso fare?


Non ho capito molto bene il tuo problema. Vuoi dire che all'avvio del form, esso ha una backgroundimage che noi chiameremo IMG. Poi lo sfondo viene cambiato e quindi non è più IMG. A questo punto tu vuoi che sia possibile rimettere IMG come BackGroundImage del form?

PM Quote
Avatar
Master_VB (Normal User)
Pro


Messaggi: 148
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 10:58
Venerdì, 10/07/2009
giusto!

PM Quote
Avatar
riseofapocalypse (Ex-Member)
Pro


Messaggi: 150
Iscritto: 08/07/2009

Segnala al moderatore
Postato alle 11:04
Venerdì, 10/07/2009
Salva IMG in una variabile e poi la ripristini al momento opportuno no? :D

PM Quote
Avatar
Master_VB (Normal User)
Pro


Messaggi: 148
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 11:09
Venerdì, 10/07/2009
così:
dim IMG as bitmap = me.backgroundimage?
andrebbe bene? solo che lui me la prende ogni volta che avvio il programma perchè l'ho messo nella formload quindi tutte le volte che si aper il programma mi prende quella che va a mettere l'utente quindi non serve a nulla. E comunque ogni volta che chiudo il programma si va a perdere il valore della variabile io ho pensato a metterlo nelle impostazioni del programma ma non trovo il tipo bitmap! e poi come fare ad associargli quell'immagine dalle impostazioni del programma? (per impostazioni intendo il progetto nell'esplora soluzioni del programma dove poi ci sono le impostazioni del programma)

PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 11:15
Venerdì, 10/07/2009
Testo quotato

Postato originariamente da Master_VB:
così:
dim IMG as bitmap = me.backgroundimage?
andrebbe bene? solo che lui me la prende ogni volta che avvio il programma perchè l'ho messo nella formload quindi tutte le volte che si aper il programma mi prende quella che va a mettere l'utente quindi non serve a nulla. E comunque ogni volta che chiudo il programma si va a perdere il valore della variabile io ho pensato a metterlo nelle impostazioni del programma ma non trovo il tipo bitmap! e poi come fare ad associargli quell'immagine dalle impostazioni del programma? (per impostazioni intendo il progetto nell'esplora soluzioni del programma dove poi ci sono le impostazioni del programma)


Con i tuoi post rischio la pazzia :D
Evidentemente riseofapocalypse ha capito il problema proprio come l'ho capito io. E il suggerimento che ti ha dato è corretto. Dopo questo tuo post, capisco che il tuo problema non lo avevo inquadrato alla perfezione. L'immagine che c'è all'avvio del form può essere cambiata? Cioè quando il form si avvia, non c'è sempre IMG come immagine? Se non capisco bene il problema non posso aiutarti :yup:

PM Quote
Avatar
riseofapocalypse (Ex-Member)
Pro


Messaggi: 150
Iscritto: 08/07/2009

Segnala al moderatore
Postato alle 11:16
Venerdì, 10/07/2009
Credo che non puoi usare nè il tipo Bitmap nè il tipo Image nei My.Settings, tuttavia c'è da ricordare che ogni cosa deriva dalla classe System.Object! Per cui puoi usare un Setting di tipo System.Object :k:

PM Quote
Avatar
Master_VB (Normal User)
Pro


Messaggi: 148
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 11:25
Venerdì, 10/07/2009
e un pò complesso il problema per quello non riesco a spiegarlo bene, ci provo.
Allora io ora ho un immagine di sfondo che non posso recuperare da nessuna parte eprchè non ce l'ho nè nel computer nè nelle resource del programma, perchè quando l'avevo messa l'avevo importata come risorsa locale. Quindi io devo salvare quest'immagine definitivamente così quando l'utente cambia l'immagine di sfondo in futuro può con un button andare a ripristinare quest'immagine che c'è ora? sono riuscito a speigarmi?

PM Quote
Avatar
riseofapocalypse (Ex-Member)
Pro


Messaggi: 150
Iscritto: 08/07/2009

Segnala al moderatore
Postato alle 11:32
Venerdì, 10/07/2009
Era quello che avevo capito io :D ecco un codice un po' grezzo che dovrebbe funzionare per il tuo scopo:
- Dichiara una variabile chiamata "prima_volta" in My.Settings di tipo Booleano inizializzata a True;
- Dichiara una variabile chiamata "immagine_iniziale" in My.Settings di tipo Object (anche se non la inizializzi);
- Nell'evento Load del Form metti questo:
Codice sorgente - presumibilmente VB.NET

  1. If My.Settings.prima_volta Then
  2.      My.Settings.immagine_iniziale = BackgroundImage
  3.      My.Settings.prima_volta = False
  4. End If


:k:

P.S. Quando vuoi ripristinare l'immagine iniziale:
Codice sorgente - presumibilmente Plain Text

  1. BackgroundImage = CType(My.Settings.immagine_iniziale, Image)


Ultima modifica effettuata da riseofapocalypse il 10/07/2009 alle 11:33
PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo