vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: Rechteck auf PictureBox verschieben 
Autor: Kuno60
Datum: 11.07.18 12:23

Hallo,
hier mal ein funktionierendes Beispiel:
Class Form1
 
  Dim dragRec As Boolean, mPos As Point
  Dim Rect As New Rectangle(80, 45, 160, 90)
 
  Private Sub pb1_MouseDown(sender As Object, e As MouseEventArgs) Handles _
    PB1.MouseDown
    If e.Button = MouseButtons.Left AndAlso Rect.Contains(e.Location) Then
      dragRec = True
      mPos = e.Location
      TB1.Text = mPos.ToString
    End If
  End Sub
 
  Private Sub pb1_MouseMove(sender As Object, e As MouseEventArgs) Handles _
    PB1.MouseMove
    If Not dragRec Then Exit Sub
    Dim p As Point = Rect.Location + (e.Location - mPos) 'neue Rechteck-Position
    mPos = e.Location 'aktuelle Mausposition merken
    If p.X < 0 Then p.X = 0
    If p.Y < 0 Then p.Y = 0
    If p.X + Rect.Width > PB1.Width - 3 Then p.X = PB1.Width - 3 - Rect.Width
    If p.Y + Rect.Height > PB1.Height - 3 Then p.Y = PB1.Height - 3 - Rect.Height
    If p <> Rect.Location Then
      Rect.Location = p
      PB1.Refresh()
    End If
  End Sub
 
  Private Sub pb1_MouseUp(sender As Object, e As MouseEventArgs) Handles _
    PB1.MouseUp
    dragRec = False
  End Sub
 
  Private Sub pb1_Paint(sender As Object, e As PaintEventArgs) Handles PB1.Paint
    e.Graphics.DrawRectangle(Pens.Red, Rect)
  End Sub
 
End Class
Kleine Verbesserung:
Durch "If e.Button = MouseButtons.Left AndAlso Rect.Contains(e.Location) Then"
kann das Rechteck nur verschoben werden, wenn mit der linken Maustaste in das Rechteck geklickt wird.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Rechteck auf PictureBox verschieben1.387Dikn11.07.18 11:00
Re: Rechteck auf PictureBox verschieben657Kuno6011.07.18 11:34
Re: Rechteck auf PictureBox verschieben628Kuno6011.07.18 12:23
Re: Rechteck auf PictureBox verschieben585Dikn11.07.18 18:30
Re: Rechteck auf PictureBox verschieben602Dikn17.07.18 11:21

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel