Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Bitmap di background in un form

Ciao a tutti, finora ho fatto solo pochi programmi in VB e quindi puo' 
darsi che il mio problema sia molto stupido, ma ho guardato i vari post e 
il sito comune (dove tra l'altro ho trovato parecchie cose molto 
interessanti ^__^) e non ho trovato risposte :(
Il problema e' che ho preparato un form con una immagine jpg di 
background, e ho preparato tutto il layout sul mio pc che ha settato 
nelle impostazioni dello schermo i caratteri piccoli.
Provato su un altro pc con impostati i caratteri grandi la risoluzione in 
pixel del form e' aumentata (immagino per il motivo che la dimensione del 
form in VB e' data in twip e non in pixel, correggetemi se le sparo 
grosse!). Questo fatto in se stesso non mi crea problemi, in quanto 
vengono ridimensionati di conseguenza tutti i controlli. Il problema e' 
che l'immagine jpg di sfond e' rimasta alle dimensioni originali.
Esiste un sistema per fare in modo che la bitmap di sfondo venga 
ridimensionata automaticamente? Ho provato tutto quello che mi e' venuto 
in mente senza nessun risultato, sigh :(
Alternativamente, ma questo forse e' un po' piu' complicato, esiste in 
VB6 la possibilita' di sapere se nelle impostazioni dello schermo sono 
settati i caratteri piccoli o quelli grandi? Come soluzione drastica 
potrei inibire il funzionamento se sapessi che sono installati i 
caratteri grandi.
Grazie a chiunque vorra' rispondermi.
Ciao
Marco

 caratteri grandi.
Vedo quattro possibilità:
1) Inserire una imagebox che viene ridimensionata alla stessa misura del form,
nel form_resize, e con lo stretch=true.
2) Creare più immagini di sfondo e caricare quella giusta a seconda della risoluzione
e del tipo di caratteri utilizzati.
3) Usare il metodo PaintPicture per copiare sul form un'immagine caricata in una
picturebox non visibile, che poi puoi svuotare.
4) Usare un WMF, se puoi, che viene ridimensionato automaticamente.
Svantaggi:
Il primo metodo richiede l'aggiunta di un controllo Imagebox.
Il secondo ti complica la vita perché devi rilevare la risoluzione corrente,
e il tipo di caratteri, e devi preparare una serie di immagini per ogni risoluzione
possibile, comprese quelle che quasi nessuno usa (1152*864 o simili...)
Il terzo, come il primo, richiede un controllo in più, e un po' più pesante.
In compenso dopo l'uso lo puoi scaricare, quindi se ne hai già uno nel form,
puoi instanziarne una copia a run-time, usarlo e scaricarlo.
Il quarto ti limita nella scelta, devi crearti un wmf che ti piaccia con un prog
tipo CorelDraw, e può essere lento nella visualizzazione. In compenso è un file
vettoriale, quindi l'immagine viene mostrata sempre nella miglior qualità possibile.
Bye, G.
--
---------------------------------------------
    Le risposte alle tue domande le trovi
    sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
       ... e nell'help in linea !
---------------------------------------------
Real E-address: 
gaet...@hotmail.com

 4) Usare un WMF, se puoi, che viene ridimensionato automaticamente.
Sei stato gentilissimo, grazie :)
Non sapevo che le immagini wmf avessero questa caratteristica, mi sembra 
la piu' semplice da attuare. Se riesco stasera faccio delle prove e ti 
dico come e' andata.
Grazie ancora e ciao.
Marco

 4) Usare un WMF, se puoi, che viene ridimensionato automaticamente.
Adesso ho capito cosa intendevi quando dicevi che i .wmf sono un po' 
pesanti ;)))
Pero' funzionava, e gia' questo era un primo raggio di sole...
Alla fine ho adottato la soluzione 1), e per non dover ricostruire di 
nuovo tutti i controlli image e label gli ho attribuito a run-time uno z-
order per farlo stare dietro a tutti gli altri controlli.
Grazie ancora. Per quanto, una volta superata la difficolta', la 
soluzione sembra sempre ovvia, ero veramente perso senza il tuo aiuto :)
Ciao
Marco

picturebox non visibile, che poi puoi svuotare.
Scusa se ho tagliato un po' ma ho un problema simile...
Devo utilizzae la soluzione 3 perche' il form e' un MDI, ma con il
paintpicture non funziona.
Ho provato a usare lo stesso metodo su un form normale (non Visible)
ridimensionato come il FormMDI. Poi copio da Picture a picture e
nisba. Che devo fare?
Aiut!
--
Giovanni "Gyo" Perdicaro
E-Mail: 
theg...@hotmail.com