vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Rahmenlose Form: Größe per Maus ändern 
Autor: pixcore
Datum: 25.04.11 21:56

Hallo,

So der Code Funktioniert nun. Ich habe in etwas verfeinert, damit man die Form auch verschieben kann. ( Dieser Code stammt aus der Tipps und Tricks Ecke dieses Forums: Verschieben von Fenster ohne Titelzeile

Hier nun meine fertiger Code:

Imports System.Windows.Forms
Public Class MaßbandFrm
 
Dim nStartPos As Point
Dim nDragPos As Point
 
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
  System.EventArgs) Handles Button1.Click
        Me.Close()
    End Sub
 
    Private Sub MaßbandFrm_FormClosing(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        Me.TopMost = False
    End Sub
 
    Private Sub MaßbandFrm_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
        Timer1.Start()
        Me.Opacity = 0.5
        Me.TopMost = True
    End Sub
 
    Private Sub MaßbandFrm_MouseDown(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
        nStartPos = Me.Location
        nDragPos = Me.PointToScreen(New Point(e.X, e.Y))
        If Cursor = Cursors.Default Then Cursor = Cursors.SizeAll
    End Sub
 
    Private Sub MaßbandFrm_MouseMove(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove
        Try
            If e.Button = Windows.Forms.MouseButtons.None Then
                If e.Location.X > Me.Width - 3 And e.Location.Y > _
                  Me.Height - 3 Then
                    Cursor = Cursors.SizeNWSE
                ElseIf e.Location.X > Me.Width - 3 Then
                    Cursor = Cursors.SizeWE
                ElseIf e.Location.Y > Me.Height - 3 Then
                    Cursor = Cursors.SizeNS
                Else
                    Cursor = Cursors.Default
                End If
            ElseIf e.Button = Windows.Forms.MouseButtons.Left Then
                Dim w As Integer = Math.Max(e.Location.X, 200)
                Dim h As Integer = Math.Max(e.Location.Y, 200)
                If Cursor = Cursors.SizeNWSE Then
                    Me.Width = w : Me.Height = h
                ElseIf Cursor = Cursors.SizeWE Then
                    Me.Width = w
                ElseIf Cursor = Cursors.SizeNS Then
                    Me.Height = h
                ElseIf Cursor = Cursors.SizeAll Then
                    ' >>aktuelle Mausposition bezogen auf den Desktop
                    Dim nCurPos As Point = Me.PointToScreen(New Point(e.X, e.Y))
 
                    ' >>Fenster an neuen Position verschieben
 
                    Me.Location = New Point(nStartPos.X + nCurPos.X - _
                      nDragPos.X, _
                     nStartPos.Y + nCurPos.Y - nDragPos.Y)
                End If
            End If
        Catch ex As Exception
 
        End Try
    End Sub
 
    Private Sub MaßbandFrm_MouseUp(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.MouseEventArgs) Handles Me.MouseUp
        Cursor = Cursors.Default
    End Sub
End Class

"Ich denke also bin ich." ... voll besch?ftigt

Beitrag wurde zuletzt am 25.04.11 um 21:58:44 editiert.

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Rahmenlose Form: Größe per Maus ändern5.704pixcore25.04.11 06:32
Re: Rahmenlose Form: Größe per Maus ändern4.179Manfred X25.04.11 07:08
Re: Rahmenlose Form: Größe per Maus ändern3.985pixcore25.04.11 10:16
Re: Rahmenlose Form: Größe per Maus ändern4.002Manfred X25.04.11 11:48
Re: Rahmenlose Form: Größe per Maus ändern3.876pixcore25.04.11 21:28
Re: Rahmenlose Form: Größe per Maus ändern3.916pixcore25.04.11 21:56

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel