Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Fragen - Antworten
Autor
Nachricht
burak_power_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.03.2008
Beiträge: 36
Wohnort: C:\Wohnort.dat

vb8 form bewegen
Verfasst am: 14.04.2008, 20:00

Hi Leute!
Ich weiss nicht, ob es hier rein passt!
Also ich habe den BorderStyle komplett weggenommen und will jetzt die Form mit gedrückter linker Maustaste beliebig verschieben.

Habe gegooglet, aber finde Codes für vb.net und die zeigen bei VB8 Fehler an.

MfG Burak
_________________
 
tr4st_
« Moderator »<b><font color=green>« Moderator »</font



Anmeldedatum: 17.12.2007
Beiträge: 315
Wohnort: Private Class _ Villa()


Verfasst am: 14.04.2008, 20:11

http://www.vbforums.com/archive/index.php/t-248176.html
Schon versucht?
_________________
Avoid Suspicion, Manipulate your friends, Eliminate your enemies.
 
burak_power_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.03.2008
Beiträge: 36
Wohnort: C:\Wohnort.dat


Verfasst am: 14.04.2008, 20:16

Joa hab ich auch schon gesehen/probiert. Klappt leider auch ned Sad
Trotzdem schon mal danke für dein Antwort

edit:// ok hab was gefunden http://www.activevb.de/tipps/vbnettipps/tipp0045.html
 
Marduk_
« Moderator »<b><font color=green>« Moderator »</font



Anmeldedatum: 17.06.2007
Beiträge: 389


Verfasst am: 14.04.2008, 22:45

Das könntest du relativ leicht mit einem Timer lösen.

Bei einem Klick auf die Form startet der Timer,du speicherst die aktuelle Mausposition. Nach dem ersten Durchgang des Timers fragst du die Mausposition wieder ab und berechnest die Differenz aus beiden Punkten. Je nach dem wie die Differenz aussieht, ist die aktuelle Formposition (Formpos = aktuelle Formposition - Differenz). Wenn du denn Timer entsprechend niedrig einstellst, wirkt das Ganze auch flüssig und ruckelt nicht. Wink
 
Viktor
« Webmaster »<b><font color=red>« Webmaster »</fo



Anmeldedatum: 08.12.2006
Beiträge: 354
Wohnort: Berlin


Verfasst am: 15.04.2008, 05:09

Hier ist noch ein passender Thread mit der selben Frage: http://dbhost.info/vbx/viewtopic.php?p=7348
 
Teto_
Poster
Poster

Anmeldedatum: 28.02.2007
Beiträge: 106


Verfasst am: 15.04.2008, 05:28

Hier hast du mal was.

Das Deklarierst und Definierst du Global Private in der Klasse deiner Form
Code:

Private mouseOffset As Point
Private isMouseDown As Boolean = False


Dann nutzt du die Mouse Events einfach.
Code:

Private Sub frmCustom_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseDown
        Dim xOffset As Integer
        Dim yOffset As Integer

        If e.Button = Windows.Forms.MouseButtons.Left Then
            xOffset = -e.X - SystemInformation.FrameBorderSize.Width
            yOffset = -e.Y - SystemInformation.CaptionHeight - SystemInformation.FrameBorderSize.Height
            mouseOffset = New Point(xOffset, yOffset)
            isMouseDown = True
        End If

    End Sub

    Private Sub frmCustom_MouseUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseUp
        If e.Button = Windows.Forms.MouseButtons.Left Then
            isMouseDown = False
        End If
    End Sub

    Private Sub frmCustom_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseMove
        If (isMouseDown) Then
            Dim mousePos As Point = Control.MousePosition
            mousePos.Offset(mouseOffset.X, mouseOffset.Y)
            Me.Location = mousePos
        End If


    End Sub
[/code]
_________________


 
burak_power_
Tutorial Leser
Tutorial Leser

Anmeldedatum: 15.03.2008
Beiträge: 36
Wohnort: C:\Wohnort.dat


Verfasst am: 15.04.2008, 09:49


Habs jetzt so gemacht, wie beim post von marduk
http://dbhost.info/vbx/viewtopic.php?p=7348
aber wenn ich aufs label klicke, verschiebt sich die maus ganz nach oben links vom form und dann kann man verschieben..
kann man nicht machen, dass man verschieben kann, von dort wo man aufs label klickt?

Code:
Public Class Form1
    Private Sub Label1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Label1.MouseDown
        Timer1.Enabled = True ' Timer wird gestartet
        Timer1.Start()
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim position As System.Drawing.Point ' Ein Punkt mit den aktuellen Mauskoordinaten
        position.X = Control.MousePosition.X ' wird angelegt
        position.Y = Control.MousePosition.Y

        Me.Location = position ' Form Location ist Mauslocation
    End Sub

    Private Sub Label1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Label1.MouseUp
        Timer1.Stop() ' Stoppen
        Timer1.Enabled = False
    End Sub
End Class
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Fragen - Antworten

Tags: bewegen, form, vb8, verschieben

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Ankündigungen: Wie poste ich Source Codes 1001 27.02.2008, 15:43
Keine neuen Beiträge Suche viele Leute für einen Downloader 516 28.09.2009, 16:10
Keine neuen Beiträge [Umfrage] Multi-tool [By Dylan] - Mit 8 Funktionen schaut rein ! ! ! 698 30.05.2009, 15:11
Keine neuen Beiträge Wie erstelle ich Mehrere codes in 1 form 200 06.11.2007, 05:40
Keine neuen Beiträge Icq Api (Ja es beschäftigt mich) 2645 10.07.2008, 12:56
 



[ Time: 0.4049s ][ Queries: 105 (0.1513s) ][ GZIP on - Debug on ]