Personalizzare la forma del form

domenica 08 marzo 2009 - 12.22

willy_80 Profilo | Senior Member

Ciao a tutti,
Sto facendo un programma in vb2008 e si chiama "NUVOLA" ho inserito un frmsplash, se disegno una nuvola è possibile dare al form la forma della nuvola disegnata partendo dalla forma dell'immagine?
Come posso fare?

aiedail92 Profilo | Expert

Ciao

Sì, si può fare. Quello che devi fare è riempire le parti che vuoi che scompaiano di un colore che non sia presente nel resto dell'immagine, quindi, dopo aver impostato l'immagine come BackgroundImage, ti basta impostare la proprietà TrasnparencyKey del Form sul colore che deve diventare invisibile.

A questo punto, ogni pixel del Form che avrà il colore impostato in TransparencyKey diventerà invisibile e pure immateriale (quindi se clicki, selezioni quello che c'è sotto e non il tuo Form).

Inoltre ti consiglio di impostare la proprietà FormBorderStyle su None per rimuovere la barra del titolo e di ridimensionamento che in uno Shaped Form non stanno affatto bene , e consiglio di usare un'immagine ad alta qualità (non una jpg compressa) perchè la minima variazione del colore (ad esempio sui bordi dell'immagine, dove si fonde col colore di sfondo), lascia delle aree del form visibili.

Luca

R3GM4ST3R Profilo | Junior Member

Ciao, il modo più veloce che mi viene in mente è questo :
crei l'immagine della nuvola e come colore di sfondo della nuvola metti un colore tipo il magenta (fuksia cattivo) e quando importi l'immagine come background nel form, imposti la proprietà TransparencyKey = magenta del Form stesso, così quando apri il form dovresti avere il form sagomato come l'immagine della nuvola.



Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (Albert Einstein)

willy_80 Profilo | Senior Member

Grazie mille funziona tutto alla grande...
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5