Servus Miteinander!
Ich bin frisch im Forum und frisch in VB. Programmiert habe ich eine Pendelsimulation, die die Pendelbewegung in einer 3D Animation und einem Diagramm ausgibt. Nun flackert die Animationen natürlich wie Teufel. Als Lösung habe ich schon einiges gefunden, unter anderem eine Lösung von BLAZE, aus diesem Forum.(Buffering) Nur wie bekomme ich diese in mein Programm eingebunden? Ich muss also die Instanz von Blaze in meinen betroffenen forms aufrufen. nur da scheitert es. Kann man mir noch helfen? Das wäre toll! Ich hoffe ihr seids nicht leid mit den Deppen.
Hier als Beispiel mein Code für die Ausgabe des Diagramms:
EDIT: Hiermit habe ich es jetzt versucht. Leider nur mit Mäßigem Erfolg.
(siehe unten im Code)
Ich bin frisch im Forum und frisch in VB. Programmiert habe ich eine Pendelsimulation, die die Pendelbewegung in einer 3D Animation und einem Diagramm ausgibt. Nun flackert die Animationen natürlich wie Teufel. Als Lösung habe ich schon einiges gefunden, unter anderem eine Lösung von BLAZE, aus diesem Forum.(Buffering) Nur wie bekomme ich diese in mein Programm eingebunden? Ich muss also die Instanz von Blaze in meinen betroffenen forms aufrufen. nur da scheitert es. Kann man mir noch helfen? Das wäre toll! Ich hoffe ihr seids nicht leid mit den Deppen.
Hier als Beispiel mein Code für die Ausgabe des Diagramms:
EDIT: Hiermit habe ich es jetzt versucht. Leider nur mit Mäßigem Erfolg.
(siehe unten im Code)
VB.NET-Quellcode
- Public Class Form3
- Public zoom As Decimal
- Private Sub Diagram(ByVal sender As Object, ByVal e As _
- System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint
- Dim p As New Pen(Color.White, 4)
- e.Graphics.DrawRectangle(p, 50, 50, Me.Width - 71, Me.Height - 91)
- ' Diagramm
- For kk = 0 To Form1.k - 1
- e.Graphics.DrawEllipse(p, CInt(50 + kk * (Me.Width - 91) / 100), _
- CInt(50 + (Me.Height - 91) / 2) - zoom * Form1.phiwerte(kk), 10, 10)
- Next
- End Sub
- Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- zoom = zoom / 2
- End Sub
- Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
- zoom = zoom * 2
- End Sub
- Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
- 'max phi suchen
- Dim i As Integer
- Dim max As Decimal
- For i = 0 To 100
- If Math.Abs(Form1.phiwerte(i)) > max Then
- max = Math.Abs(Form1.phiwerte(i))
- End If
- Next
- zoom = (Me.Height - 91) / max / 2
- End Sub
- End Class
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Cirrfeld“ ()