Hallo alle zusammen,
wie kann ich es schaffen, dass wenn ich ein Bild (in VB6) mit der linken Maustaste gedrückt halste, es verschiebbar ist?
Danke für gute Antworten schon mal im Vorrauss^^
Gruß
christopher
Hallo alle zusammen,
wie kann ich es schaffen, dass wenn ich ein Bild (in VB6) mit der linken Maustaste gedrückt halste, es verschiebbar ist?
Danke für gute Antworten schon mal im Vorrauss^^
Gruß
christopher
Hallo Christopher,
auch hier gibt es wieder 2 Möglichkeiten ein Bild darzustellen!
Aber anbei kurz die Vorgehensweise.
Im Mousedown Event setzt du ein globales Flag das die Rechte Maustaste gedrueckt ist. Im MouseUP Event setzt du die Variable wieder zurueck.
Im MouseMouve Event kannst du die „BildBox“ anhand der Koordinaten die du geliefert bekommst und mittels der Methode Move des Steuerelementes verschieben.
MfG Alex
hmm, das klingt schon logisch, aber leider geht es nicht bei mir!
kansnt du mir nicht bitte ienfach ein Beispiel schreiben?
währ nett!
Gruß
christopher2007
Hallo Christopher,
ungetestet, sollte es aber tun. Ist wie gesagt nur zu Demozwecken und dient als Funktionsweise.
Option Explicit
Dim Press As Boolean
Dim x1 As Long
Dim y1 As Long
Private Sub Picture1\_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
If Button = 2 Then
Press = True
End If
End Sub
Private Sub Picture1\_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
If Press Then
With Picture1
If x1 = 0 Then x1 = x
If y1 = 0 Then y1 = y
.Move (x - x1) + .Left, (y - y1) + .Top
End With
End If
End Sub
Private Sub Picture1\_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
Press = False
End Sub
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo Christopher
Zum Verschieben eines Steuerelementes kannst Du doch das DragDrop-Ereignis verwenden.
Viele Grüße Carsten
Hallo Christopher,
und das soll wie funktionieren?
MfG Alex
Hallo Anno74
Hallo Christopher,
Das bin ich nicht
So funktioniert das:
'Formular Form1
'PictureBox Picture1
Private DragX As Single
Private DragY As Single
Private Sub Form\_DragDrop(Source As Control, X As Single, Y As Single)
Select Case Source.Name
Case "Picture1"
Source.Move X - DragX, Y - DragY
End Select
End Sub
Private Sub Picture1\_DragDrop(Source As Control, X As Single, Y As Single)
Select Case Source.Name
Case "Picture1"
Source.Move X - DragX + Picture1.Left, Y - DragY + Picture1.Top
End Select
End Sub
Private Sub Picture1\_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Picture1.Drag 1
DragX = X
DragY = Y
End Sub
Private Sub Picture1\_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Picture1.Drag 2
End Sub
Viele Grüße
Carsten