tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
380
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    headpainter headpainter ist offline Mitglied
    Registriert seit
    Aug 2007
    Beiträge
    15
    Hallo,

    ich möchte gern in meinen Projekten Forms benutzen, die nicht einfach nur eine eckicge Form haben.
    Dazu habe ich einen Path erstellt und die Region der Form auf den Path gesetzt.
    Jetzt habe ich allerdings das Problem, das wenn ich die veränderte Form über den Bildschirm bewege, flackert die Form unerträglich. Wenn ich die Region wieder entferne kann ich die Form absolut flimmerfrei bewegen.

    Hier mein VB Code

    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    
    Public Class Form1
     
        Private CurrentPosition As New System.Drawing.Point
        Private MouseButton As System.Windows.Forms.MouseButtons = Nothing
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _
                               Handles MyBase.Load
            Dim Path As New System.Drawing.Drawing2D.GraphicsPath
            
            Path.AddEllipse(0, 0, 200, 200)
            Path.AddEllipse(75, 75, 50, 50)
            Path.CloseAllFigures()
            Me.Region = New Region(Path)
         
        End Sub
     
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
                                    Handles Button1.Click
            Me.Close()
     
        End Sub
     
        
     
        Private Overloads Sub OnMouseDown(ByVal Sender As System.Object, _
                        ByVal e As System.Windows.Forms.MouseEventArgs) _
                        Handles MyBase.MouseDown
     
            MyClass.MouseButton = e.Button()
            With MyClass.CurrentPosition
                .X = e.X()
                .Y = e.Y()
            End With
     
        End Sub
     
        Private Overloads Sub OnMouseMove(ByVal Sender As System.Object, _
                                            ByVal e As System.Windows.Forms.MouseEventArgs) _
                                            Handles MyBase.MouseMove
     
            Select Case MouseButton
                Case Is = Windows.Forms.MouseButtons.Left
     
     
                    MyClass.Top = Windows.Forms.Cursor.Position.Y() - MyClass.CurrentPosition.Y()
                    MyClass.Left = Windows.Forms.Cursor.Position.X() - MyClass.CurrentPosition.X()
     
     
                Case Is = Nothing
     
                    Exit Sub
            End Select
        End Sub
     
        Private Overloads Sub OnMouseUp(ByVal Sender As System.Object, _
                                        ByVal e As System.Windows.Forms.MouseEventArgs) _
                                        Handles MyBase.MouseUp
            MyClass.MouseButton = Nothing
        End Sub
    End Class

    Was muß ich ändern, bzw einfügen?
     

  2. #2
    headpainter headpainter ist offline Mitglied
    Registriert seit
    Aug 2007
    Beiträge
    15
    Hat echt keiner ne Idee?
     

  3. #3
    Avatar von Norbert Eder
    Norbert Eder Norbert Eder ist offline Mitglied Diamant
    Registriert seit
    Feb 2004
    Ort
    Österreich / Graz
    Beiträge
    5.137
    Blog-Einträge
    51
    Such mal hier im Forum nach DoubleBuffer.
     

Ähnliche Themen

  1. Sandtextur flimmert beim animieren
    Von siggi33 im Forum Cinema 4D
    Antworten: 1
    Letzter Beitrag: 06.09.10, 16:54
  2. [VB 6] Image auf einer Form per Tasten bewegen?
    Von G3kai im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 03.09.08, 16:06
  3. [C#] MouseDown --> Form bewegen
    Von smitti im Forum .NET Windows Forms
    Antworten: 1
    Letzter Beitrag: 03.11.07, 15:46
  4. Antworten: 2
    Letzter Beitrag: 03.06.07, 15:51
  5. Hautproblem (skin) beim bewegen
    Von Reinforcement im Forum 3D Studio Max
    Antworten: 5
    Letzter Beitrag: 19.06.04, 16:20