Zu den Aufzeichnungen der tutorials.de-Live-Workshops
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
2934
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    ShaggyWien ShaggyWien ist offline Grünschnabel
    Registriert seit
    Dec 2003
    Ort
    Wien
    Beiträge
    2
    Hallo Leute!

    Schreibe gerade ein Programm und bräuchte da dringed Hilfe. Ich lese Buttons aus einer Mssql Datenbank aus und stelle sie grafisch am Bildschirm da.


    Meine Fragen jetzt dazu:

    1. Wie schaffe ich es jetzt per Drag and Drop die Buttons zu bewegen?
    2. Wie kann ich am Screen einen Raster darstellen? Ich meine so einen wie im Entwurfsmodus...

    Gibt es dazu irgendwo Tutorials? Habe schon in der Msdn und Sdk geblättert, aber die haben nicht so gute Beispiele.

    Danke für eure Hilfe

    Mfg
    Shaggy
     

  2. #2
    Retlaw Retlaw ist offline Mitglied Platin
    Registriert seit
    Jul 2003
    Ort
    Bayern
    Beiträge
    508
    Sieht noch etwas sehr komisch aus, aber ist vielleicht ein Ansatz
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
    Dim drag As Boolean
    Dim A As Single
    Dim B As Single
     
    Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
        drag = True
    End Sub
     
    Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
        If drag = True Then
            Command1.Top = Y
            Command1.Left = X
        End If
    End Sub
     
    Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
        drag = False
    End Sub
     
    Private Sub Form_Load()
        Command1.MousePointer = 15
    End Sub
     

  3. #3
    Retlaw Retlaw ist offline Mitglied Platin
    Registriert seit
    Jul 2003
    Ort
    Bayern
    Beiträge
    508
    Nachtrag:

    Jetzt funktionierts, auch mit beliebiger Anzahl an Buttons.
    Du braucht ein Steuerelementefeld, und folgenden Code, dann gehts von selbst wenn du neue Schaltflächen anlegst.
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    
    Option Explicit
     
    Dim A As Single
    Dim B As Single
    Dim A1 As Single
    Dim B1 As Single
     
    Private Sub Command1_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
        Command1(Index).Tag = True
    End Sub
     
    Private Sub Command1_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
        If Command1(Index).Tag = False Then
            A1 = X
            B1 = Y
        End If
        A = A + X - A1
        B = B + Y - B1
        MoveButton (Index)
    End Sub
     
    Private Sub Command1_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
        Command1(Index).Tag = False
    End Sub
     
    Private Sub Form_Load()
        Command1(0).Tag = False
        Command1(0).MousePointer = 15
        Command1(1).Tag = False
        Command1(1).MousePointer = 15
        Command1(2).Tag = False
        Command1(2).MousePointer = 15
    End Sub
     
    Private Sub MoveButton(Index As Integer)
        If Command1(Index).Tag = True Then
            Command1(Index).Top = B
            Command1(Index).Left = A
        End If
    End Sub

    Ein Raster kannst du anzeigen indem du zwei Schleifen verschachtelst, für X und Y Koordinate und bei jedem Durchlauf den Zähler um die Rasterbreite erhöst.
    Dann beim Inneren Durchlauf auf X/Y einen Punkt zeichnen.

    Packen wir das Ganze in eine Sub mit dem Namen ZeichneRaster und dann kannst es aus dem Paint-Ereignis des Formulars mit
    Code :
    1
    2
    3
    
    if bRasterEinAus=True then
        ZeichneRaster
    end if
    bRasterEinAus ist eine Variable vom Typ Boolean in der du festlegen kannst ob das Raster angezeigt wird oder nicht.
    Geändert von Retlaw (09.12.03 um 14:22 Uhr)
     

Ähnliche Themen

  1. Drag n Drop
    Von kerstel im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 21.01.10, 13:36
  2. Drag & Drop
    Von muga im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 03.08.09, 17:42
  3. SWT Drag&Drop
    Von HuberDe im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 0
    Letzter Beitrag: 27.09.07, 08:15
  4. Drag & Drop mit <tr> ?!
    Von ev0lst im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 12.08.07, 10:23
  5. SWT: Ghosted Drag-Image bei Drag & Drop
    Von snake_plissken im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 1
    Letzter Beitrag: 15.04.06, 23:36