vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Grafik und Font · Grafische Effekte   |   VB-Versionen: VB4, VB5, VB617.02.01
Tacho-Simulation

Dieser Tipp zeigt, wie man einen grafischen Tacho mit bewegbarer Tachonadel simulieren kann.

Autor:   Heinz PrelleBewertung:  Views:  31.385 
www.visual-basic5.deSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Unser heutiger Tipp demonstriert, wie man einen Tacho mit regelbarer Tachonadel simuliert. Zum Bewegen der Tachonadel dient in unserem Beispiel ein vertikales Bildlauf-Element (Scrollbalken). Das Anzeigen der Tachonadel erfolgt über die öffentliche Prozedur fTacho. Für die optische Darstellung des Tachos dient ein JPG-Bild.Tacho-Simulation

' Beispiel : Tachosimulation
Const PI = 3.141592654
Const GRAD_TO_RADIANS = PI / 180
 
' Tachonadel anzeigen
Public Sub fTacho(Pic As Control, dMinStart As Double, _
  dMaxStart As Double, dMin As Double, dMax As Double, _
  iNeedleWidth As Integer, sNeedleColor As String, _
  dNeedleLength As Double, dValue As Double)
 
  Dim iPicX As Integer
  Dim iPicY As Integer
  Dim minDegree As Integer
  Dim dRadius1 As Double
  Dim dRadius2 As Double
  Dim vNLength As Integer
  Dim vRet As Single
  Dim vRRet As Double
 
  minDegree = 0
  iPicX = Pic.Width / 2
  iPicY = Pic.Height / 2
 
  vRet = IIf(iPicX > iPicY, iPicY, iPicX) - 5
  vNLength = vRet * dNeedleLength
 
  dRadius1 = dMaxStart - dMinStart
  dRadius2 = dMax - dMin
  vRRet = ((dRadius2 / dRadius1) * dValue) + dMin
 
  vRetSin = Sin((minDegree - vRRet * 6) * GRAD_TO_RADIANS) _
    * (vRet - vNLength) + iPicX
  vRetCos = Cos((minDegree - vRRet * 6) * GRAD_TO_RADIANS) _
    * (vRet - vNLength) + iPicY
  vOldColor = vbBlack
  Pic.ForeColor = sNeedleColor
  Pic.DrawWidth = iNeedleWidth
  Pic.Cls
  Pic.Line (iPicX, iPicY)-(vRetSin, vRetCos)
  Pic.ForeColor = vOldColor
End Sub
 
' Für unser Beispiel:
' Bewegen der Tachonadel über den vertikalen Scrollbalken
Private Sub Form_Load()
  VScroll1.Value = 0
End Sub
 
Private Sub VScroll1_Change()
  fTacho Picture1, 0, 120, 8, 52, 2, vbBlack, 0.1, _
    VScroll1.Value
End Sub

Am besten ist es, wenn Sie sich das kleine Anwendungsbeispiel einmal anschauen.



Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(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.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle 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.