Drag and Drop

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von soaroby.

    Drag and Drop

    Guten Tag

    Ich habe nun schon lange gesucht und herumgefragt, ich kam aber nicht zum Ziel...
    Ich in relativ neu in V Basic...

    Ich will, irgendein einfachtes Objekt, z.B. ein Button, auf ein anderes Objekt per drag n drop ziehen, und sobald der Button am richtigen Ort fallengelassen wird, eine Aktion ausführen. z.B. sobald der knopf fallengelassen wird, eine Checkbox checken...

    Ein kolleg von mir hat mir das bereits einmal gezeigt, er benutzt aber VB6. Dort ging das ganz einfach. bei VB2005, welches ich benutze, funktionierte das nicht, wie er es wollte.

    Hoffentlich habt ihr begriffen, was ich meine.
    irgendwie verstehe ich das nicht mit dem fallengelassen und was für ein knopf?!

    Hier ist mal ein kleines Script zu Drag & Drop
    [VB.NET] Drag & Drop

    Hier ist nommal das was google ausspuckt vllt kannste da auch was finden...
    google.de/search?hl=de&q=vb.ne…q=vb.net+Drag%26&gs_rfai=
    Den von Dir verlinkten Thread habe ich auch schon angeschaut, ich komme damit aber auf keinen grünen Zweig... Im Anhang sende ich dir en kleines bildchen, es soll vernaschaulichen was ich erreichen möchte
    Bilder
    • someinichs.jpg

      13,87 kB, 404×130, 280 mal angesehen
    versuchs mal mit was anderem als Buttons ... Label und Textbox
    Du könntest eine globale Boolean-Variable deklarieren, in der du angibst, ob der Knopf gedrückt wurde, dann mit einem Timer oder dem Form-MouseMove-Event die Location des Buttons auf die relative Position des Cursors bewegen lassen und bei dem MouseUp-Event des Knopfes die Variable auf False setzen, damit der Knopf nicht mehr gezogen wird...

    Soetwas in der Richtung. Würde mein verdammtes Google Chrome nicht seine Probleme mit dem VB-Code haben, würde ich dir gerne ein kurzes Code-Beispiel posten. Hole ich gerne Morgen mittels Text-Datei nach ;).

    MfG,
    X-Zat / Momo

    //Edit:

    Unser Mangafreak1995 hat schon recht: Mit einem Label oder einer TextBox ginge das leichter, da diese beiden das Click-Event nicht so fokussieren bzw. intensiv verwenden wie z.B. der Button. Sogar eine PictureBox wäre besser...
    Also mit dem Code hier kannst du Sachen wie ein button oder so auf deiner Form bewegen. Kannst ja mal vllt damit rum experimentieren vllt klappts ja!

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim mousepressed As Boolean = False
    3. Dim mousex As Int16
    4. Dim mousey As Int16
    5. Private Sub Button1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Button1.MouseDown
    6. mousepressed = True
    7. mousex = MousePosition.X - Button1.Left
    8. mousey = MousePosition.Y - Button1.Top
    9. End Sub
    10. Private Sub Button1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Button1.MouseMove
    11. If mousepressed = True Then
    12. Button1.Left = MousePosition.X - mousex
    13. Button1.Top = MousePosition.Y - mousey
    14. End If
    15. End Sub
    16. Private Sub Button1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Button1.MouseUp
    17. mousepressed = False
    18. End Sub
    19. End Class