vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Oberfläche · Effekte   |   VB-Versionen: VB.NET20.03.06
Transparente Fenster (.NET)

Dieses Beispiel zeigt, wie man ein Fenster in bestimmten Abstufungen transparent darstellen kann.

Autor:   maggoBewertung:     [ Jetzt bewerten ]Views:  18.651 
ohne HomepageSystem:  WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Unser heutiges Beispiel zeigt, wie man unter VB.NET ein Fenster (teil-)transparent darstellen kann. Hierzu braucht man lediglich die Opacity-Eigenschaft der Form auf den gewünschten Wert festlegen. 1 bedeutet keine Transparenz, 0 absolute Transparenz. Werte zwischen 0 und 1 machen das Fenster teiltransparent.

Für das nachfolgende Beispiel erstellen Sie bitte ein Windows-Forms-Projekt und platzieren folgende Controls auf die Form:

  • Label1
  • Button1
  • Button2
  • TrackBar1

Fügen Sie folgenden Code in den Codeteil der Form ein:

Private Sub Form1_Load(ByVal sender As System.Object, _
  ByVal e As System.EventArgs) Handles MyBase.Load
 
  ' Control-Beschriftung
  Me.Label1.Text = "Bewegen Sie den Regler zur gewünschten Transparenz"
  Me.Label1.AutoSize = True
  Me.Button1.Text = "50% Transparenz"
  Me.Button2.Text = "Wiederherstellen"
 
  ' Minimum, Maximum, und die Schrittweite des Reglers festlegen
  With Me.TrackBar1
    .Maximum = 100
    .Minimum = 70
    .LargeChange = 1
    .Value = TrackBar1.Maximum
  End With
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, _
  ByVal e As System.EventArgs) Handles Button1.Click
 
  Me.Opacity = 0.75
 
  ' Regler von Trackbar1 auf 0.75 einstellen
  TrackBar1.Value = 75
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, _
  ByVal e As System.EventArgs) Handles Button2.Click
 
  ' Wiederherstellen (keine Transparenz)
  Me.Opacity = 1
  TrackBar1.Value = TrackBar1.Maximum
End Sub
Private Sub TrackBar1_Scroll(ByVal sender As System.Object, _
  ByVal e As System.EventArgs) Handles TrackBar1.Scroll
 
  ' Da der Wert zwischen 1 und 100 berechnet wird muss er auf
  ' einen Wert zwischen 0.01 und 1 umgerechnet werden (Prozent-Skala der Trackbar)
  Dim NeuWert As Decimal = TrackBar1.Value / 100
 
  ' neue Transparenz ausführen
  Me.Opacity = NeuWert
End Sub