Der nachfolgende Tipp zeigt, wie man ¨uberpr¨uft, ob sich ein Punkt in einem Kreis befindet. Dazu werden die Koordinaten des Punktes in die Kreisgleichung eingesetzt.Wenn die Gleichung erf¨ullt ist, liegt der Punkt im Kreis. Die Kreisgleichung lautet: (x - xm)
Dazu ein Beispiel: Option Explicit Dim verschieben As Boolean ' -------------------------------- ' Kreis aufnehmen ' -------------------------------- Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, _ X As Single, Y As Single) Dim xm As Double Dim ym As Double Dim r As Double ' -------------------------------- ' Kreisdefinition ' -------------------------------- ' Mittelpunktskoordinaten xm = Shape1.Left + Shape1.Width / 2 ym = Shape1.Top + Shape1.Height / 2 ' Radius ' = die kleinere Ausdehnung If Shape1.Width > Shape1.Height Then r = Shape1.Height / 2 Else r = Shape1.Width / 2 End If ' -------------------------------- ' wurde in den Kreis geklickt? ' -------------------------------- If (X - xm) ^ 2 + (Y - ym) ^ 2 <= r ^ 2 Then verschieben = True End If End Sub ' -------------------------------- ' Kreis verschieben ' -------------------------------- Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, _ X As Single, Y As Single) If verschieben = True Then Shape1.Left = X - Shape1.Width / 2 Shape1.Top = Y - Shape1.Height / 2 End If End Sub ' -------------------------------- ' Kreis ablegen ' -------------------------------- Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, _ X As Single, Y As Single) If verschieben = True Then Shape1.Left = X - Shape1.Width / 2 Shape1.Top = Y - Shape1.Height / 2 ' Flag zuruecksetzen verschieben = False End If End Sub Dieser Tipp wurde bereits 15.953 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevWizard für VB5/6 ![]() Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) Tipp des Monats Heinz Prelle Datei-Mehrfachauswahl an eine ListBox übergeben Dieser Tipp zeigt, wie Sie über den Windows-CommonDialog eine Mehrfach-Dateiauswal realisieren... Access-Tools Vol.1 ![]() Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||||||||||||||
|
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. |
|||||||||||||||||||||||||||||


Punkt im Kreis?


