Aplikace má ze zadaných procent udělat kruhový graf Proč to následující zápis vykreslí špatně? (http://img15.imageshack.us/i/beznzvubg.p... při zadání 10%,20%,30%,40%)
Public Class Form1
Dim procenta(360) As Byte
Dim uhly(procenta.Length) As Byte
Dim uhel As Integer = 0
Dim ran As New Random
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Try
For i As Integer = 0 To procenta.Length - 1 ' převést procenta na stupně
Dim a, b As Byte
a = procenta(i)
b = 3.6 * a
uhly(i) = b
Next
For i As Integer = 0 To uhly.Length - 1
e.Graphics.FillPie(rgb, 0, 0, 600, 600, uhel, uhly(i)) 'vykreslit část grafu
uhel = 0
For u As Integer = 0 To i ' určit začáteční úhel další části
uhel = uhel + uhly(u)
Next
Next
Catch ex As Exception
MsgBox(Err.Description, , Err.Number)
Me.Close()
End Try
End Sub
Public Function rgb()
Dim barva As New SolidBrush(Color.FromArgb(255, ran.Next(0, 255), ran.Next(0, 255), ran.Next(0, 255))) 'náhodná barva
Return barva
End Function
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
For i As Integer = 0 To 360
Dim c As Integer = CInt(InputBox("Zadejte hodnotu " & i & " (v procentech, -1 pro konec)")) 'zjištění hodnot
If c <> -1 Then
procenta(i) = c
ElseIf c = -1 Then
Exit For
End If
Next
Catch ex As Exception
MsgBox(Err.Description, , Err.Number)
Me.Close()
End Try
End Sub
End Class
Za každou radu předem děkuji (VS 2010 Professional, .NET framework 4.0)
|