Dobrý den, Při dlouhotrvajících výpočtech chci znázornit graficky změny proměnných. V přiloženém prográmku jsem neuspěl ani s akcí, ani s timerem. Jsem samouk a nemám se koho zeptat. V MSDN jsem podobný příklad nenašel. Graf by se měl objevit buď po skončení vnitřní smyčky nebo za určitý časový interval (třeba 50 sec). Budu vděčný za každé chodící řešení.
Imports Microsoft.VisualBasic
Imports System
Imports System.Drawing
'Imports System.Threading
Imports System.String
Imports System.Math
Public Class Form1
Dim NX(10), NY(1, 10) As Integer
Dim Nind, Nroz As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles Button1.Click
Dim J, K, L, N, Nroz, Nind As Integer
Dim NX(10), NY(1, 10) As Double
Me.TextBox1.Text = "start"
For N = 0 To 5
Beep()
Nroz = 1
Nind = 10
For J = 0 To 300000
For K = 0 To Nind
NX(K) = K
For L = 0 To Nroz
NY(L, K) = 150 + Sin(L + 0.4 * K + 0.3 * N)
Next
Next
Next
'má se objevit obrázek
Next N
End Sub
Public Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click 'Timer1.Tick
PictureBox1.Dock = DockStyle.Fill
PictureBox1.BackColor = Color.White
AddHandler PictureBox1.Paint, AddressOf Me.pictureBox1_Paint
Me.Controls.Add(PictureBox1)
End Sub
Private Sub pictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs)
Dim g As Graphics = e.Graphics
Dim J, K As Integer
g.DrawString("Soubor CVBHGHFD", _
New Font("Arial", 10), Brushes.Black, New PointF(30.0F, 30.0F))
For K = 0 To Nroz
For J = 0 To Nind - 1
If K = 0 Then g.DrawLine(System.Drawing.Pens.Green, NX(J), NY(K, J), NX(J + 1), NY(K, J + 1))
If K = 1 Then g.DrawLine(System.Drawing.Pens.Blue, NX(J), NY(K, J), NX(J + 1), NY(K, J + 1))
Next
Next
End Sub
End Class
|