Tipp 0136 Form an die Bildschirmränder andocken
Autor/Einsender:
Datum:
  Michael Werner
06.09.2006
Entwicklungsumgebung:   VB.Net 2003
Framework:   1.1
Wenn man den Arbeitsbereich des Bildschirms, das ist die Bildschirmgröße abzüglich der Windowsleiste, über Screen.PrimaryScreen.WorkingArea in Höhe und Breite berechnet hat, ist ein Andocken der Form an einem beliebigen Rand des Bildschirmes mit den Eigenschaften Left, Top und Width, Height der Form ganz einfach umzusetzen. In diesem Beispiel können die Screen-Rand-Positionen des Formulars über RadioButtons angesteuert werden.
 
  Private lngWorkAreaWidth As Long = _
        Screen.PrimaryScreen.WorkingArea.Width
  Private lngWorkAreaHeight As Long = _
        Screen.PrimaryScreen.WorkingArea.Height

  Private Sub Form1_Load(ByVal sender As System.Object, _
         ByVal e As System.EventArgs) Handles MyBase.Load
    Me.Left = 0
    Me.Top = 0
  End Sub

  Private Sub RadioButton1_CheckedChanged(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      RadioButton1.CheckedChanged
    'linke obere Ecke
    Me.Left = 0
    Me.Top = 0
  End Sub

  Private Sub RadioButton2_CheckedChanged(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      RadioButton2.CheckedChanged
    'rechte untere Ecke
    Me.Left = CInt(lngWorkAreaWidth - Me.Width)
    Me.Top = CInt(lngWorkAreaHeight - Me.Height)
  End Sub

  Private Sub RadioButton3_CheckedChanged(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      RadioButton3.CheckedChanged
    'linke untere Ecke
    Me.Left = 0
    Me.Top = CInt(lngWorkAreaHeight - Me.Height)
  End Sub

  Private Sub RadioButton4_CheckedChanged(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      RadioButton4.CheckedChanged
    'rechte obere Ecke
    Me.Top = 0
    Me.Left = CInt(lngWorkAreaWidth - Me.Width)
  End Sub

  Private Sub RadioButton5_CheckedChanged(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      RadioButton5.CheckedChanged
    'linker Rand
    Me.Left = 0
    Me.Top = CInt(lngWorkAreaHeight - Me.Height) \ 2
  End Sub

  Private Sub RadioButton6_CheckedChanged(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      RadioButton6.CheckedChanged
    'rechter Rand
    Me.Left = CInt(lngWorkAreaWidth - Me.Width)
    Me.Top = CInt(lngWorkAreaHeight - Me.Height) \ 2
  End Sub

  Private Sub RadioButton7_CheckedChanged(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      RadioButton7.CheckedChanged
    'oberer Rand
    Me.Top = 0
    Me.Left = CInt(lngWorkAreaWidth - Me.Width) \ 2
  End Sub

  Private Sub RadioButton8_CheckedChanged(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      RadioButton8.CheckedChanged
    'unterer Rand
    Me.Top = CInt(lngWorkAreaHeight - Me.Height)
    Me.Left = CInt(lngWorkAreaWidth - Me.Width) \ 2
  End Sub
 
Weitere Links zum Thema
Fensterform ändern
Form ein- und ausblenden

Windows-Version
98/SE
ME
NT
2000
XP
Vista
Win 7


Download  (9,4 kB) Downloads bisher: [ 595 ]

Vorheriger Tipp Zum Seitenanfang Nächster Tipp

Startseite | Tipps | Projekte | Tutorials | Bücherecke | VB-/VBA-Tipps | API-Referenz | Komponenten | VB.Net-Forum | VB/VBA-Forum | DirectX-Forum | Foren-Archiv | DirectX | Chat | Spielplatz | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum

Seite empfehlen Bug-Report
Letzte Aktualisierung: Sonntag, 22. Januar 2012