Zum Inhalt springen

vb .net | Panel per KeyDown bewegen


Empfohlene Beiträge

Geschrieben

Tach,

Ich hab folgendes Problem und zwar möchte ich mein Panel2 mit den Pfeiltasten bewegen, das ganze hab ich so probiert:

Bsp:


Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown


'// Timer für Bewegung nach Oben an


        If e.KeyCode = Keys.Up Then

            timRunter.Enabled = False

            timRechts.Enabled = False

            timOben.Enabled = True

            timLinks.Enabled = False

.... 

& hier noch der Timer:

   Private Sub timOben_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timOben.Tick

        Panel2.Location = New Point( _

        Panel2.Location.X, _

        Panel2.Location.Y - 10)


        If Panel2.Top = Panel1.Top Then

            MsgBox("Leider verloren")

            timRunter.Enabled = False

            timRechts.Enabled = False

            timOben.Enabled = False

            timLinks.Enabled = False


            Panel2.Location = New Point(200, 200)

        End If

    End Sub

Jetzt wenn ich den Debug-Modus starte und eine Pfeiltaste drücke, passiert überhaupt nicht's :S

Hoffe könnt mir helfen,

mfg Cartman

Geschrieben

Hab jetzt mal "Keypreview = True" extra nochmal auf nen Button gelegt, aber hat auch nichts gebracht.

& Anbei noch eine Frage, wenn ich ein kleines Panel erzeuge,

Code:


  Dim Element As New Panel


     With Element

            .BackColor = Color.Green



            .Size = New Size(10, 10)

            .Visible = True


        Berechnen:

            .Location = New Point(Rnd() * 300, Rnd() * 300)

            If Element.Location.X > 340 Or Element.Location.X < 10 Then

                GoTo Berechnen

            ElseIf Element.Location.Y < 290 Or Element.Location.Y > 10 Then

                GoTo Berechnen

            End If

            Me.Controls.Add(Element)

        End With

& Ich erzeuge mehrere, werden diese dann automatisch nummeriert oder weisst jemand wie ich jedes panel selbst ansprechen kann?

Geschrieben

Naja, du könntest die Panels in einer List<T> verpacken und über den index gehen.

Zu deinem Key Event: Nochmal checken, ob der Handler überhaupt mit dem Button verknüpft ist (kann beim umbenennen etc. unter Umständen verloren gehen)

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...