vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

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

Allgemeine Diskussionen
Re: freie Bereiche mit Click Ereigniss 
Autor: Zardoz
Datum: 01.03.07 14:30

Hallo Christian,
ein Standard-Dartboard läßt sich auch mathematisch erfassen. Probier mal dieses:
' Controls: 1 * Picturebox mit Bild eines Dartboards
Option Explicit
Private XM#, YM#, Rad#(5), Pi#
 
Private Sub Form_Load()
  ' Angaben in Pixeln
  Rad(0) = 200 ' Außenradius Double-Ring
  Rad(1) = 190 ' Innenradius Double-Ring
  Rad(2) = 100 ' Außenradius Triple-Ring
  Rad(3) = 90 ' Innenradius Triple-Ring
  Rad(4) = 20 ' Außenradius Bull
  Rad(5) = 10 ' Außenradius Bull's eye
  With Picture1
    .ScaleMode = vbPixels
    .AutoSize = True
    XM = .ScaleWidth \ 2 ' X-Position Mittelpunkt Dartboard
    YM = .ScaleHeight \ 2 ' Y-Position Mittelpunkt Dartboard
  End With
  Pi = Atn(1) * 4
End Sub
 
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As _
  Single, Y As Single)
  Dim Radius#, DX#, DY#, Wnk#, Punkte&, Out$
 
  DX = X - XM
  DY = Y - YM
  Radius = Sqr(DX * DX + DY * DY)
  Select Case Radius
    Case Is <= Rad(5)
      Out = "Bull's eye"
      Punkte = 50
    Case Is <= Rad(4)
      Out = "Bull"
      Punkte = 25
    Case Is <= Rad(3)
      Punkte = 1
    Case Is <= Rad(2)
      Out = "Triple-Ring 3 *"
      Punkte = 1
    Case Is <= Rad(1)
      Punkte = 1
    Case Is <= Rad(0)
      Out = "Double-Ring 2 *"
      Punkte = 1
  End Select
  If Punkte = 1 Then
    Wnk = Atann(DX, DY) * 180 / Pi
    Punkte = Choose(20 - Int(((Wnk + 351) Mod 360) / 18), 6, 13, 4, 18, 1, 20, _
      5, 12, 9, 14, 11, 8, 16, 7, 19, 3, 17, 2, 15, 10)
  End If
  Me.Caption = Space$(20) & Out & " " & Punkte & " Punkt" & IIf(Punkte <> 1, _
    "e", "")
End Sub
Function Atann aus diesem Code übernehmen.

Gruss,

Zardoz

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
freie Bereiche mit Click Ereigniss1.136krysly26.02.07 17:14
Re: freie Bereiche mit Click Ereigniss693vbtricks26.02.07 18:18
Re: freie Bereiche mit Click Ereigniss799krysly26.02.07 18:45
Re: freie Bereiche mit Click Ereigniss698vbtricks26.02.07 19:48
Re: freie Bereiche mit Click Ereigniss870Zardoz26.02.07 21:54
Re: freie Bereiche mit Click Ereigniss664krysly27.02.07 08:47
Re: freie Bereiche mit Click Ereigniss697Zardoz01.03.07 14:30
Re: freie Bereiche mit Click Ereigniss725krysly01.03.07 15:15

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-2025 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