Esiste un modo semplice per creare moduli trasparenti in un'app VB .NET?
-
09-06-2019 - |
Domanda
Sto scrivendo una semplice app che avrà un piccolo modulo posizionato in un angolo dello schermo e si aggiornerà da sola.
Mi piacerebbe davvero che quel modulo fosse trasparente e che la trasparenza fosse configurabile dall'utente.
Esiste un modo semplice per raggiungere questo obiettivo?
Soluzione
Potresti provare a usare il file Opacità proprietà del modulo.Ecco lo snippet pertinente dalla pagina MSDN:
private Sub CreateMyOpaqueForm()
' Create a new form.
Dim form2 As New Form()
' Set the text displayed in the caption.
form2.Text = "My Form"
' Set the opacity to 75%.
form2.Opacity = 0.75
' Size the form to be 300 pixels in height and width.
form2.Size = New Size(300, 300)
' Display the form in the center of the screen.
form2.StartPosition = FormStartPosition.CenterScreen
' Display the form as a modal dialog box.
form2.ShowDialog()
End Sub
Altri suggerimenti
Impostato Form.Opacity = 0.0
al caricamento della pagina
Ho impostato qualcosa di simile a ciò di cui stai parlando su un'app circa un anno fa.Usare un While
loop con un piccolo Sleep
puoi impostare un piacevole effetto di dissolvenza.
Non so esattamente cosa intendi per trasparente, ma se usi WPF puoi impostare AllowTransparency = True
sul modulo, quindi rimuovi lo stile/bordo del modulo e imposta lo sfondo su un colore che abbia un canale alfa pari a zero.Quindi, puoi disegnare sul modulo tutto ciò che desideri e lo sfondo sarà trasparente e il resto sarà completamente visibile.Inoltre, potresti impostare lo sfondo su un livello a bassa opacità in modo da poter vedere metà del modulo.
È possibile impostare il Form.Opacity
proprietà.Dovrebbe fare quello che vuoi.