приложение, использующее графику, отображает только красные буквы X над главным окном и управляет - PullRequest
0 голосов
/ 26 июля 2010

код, который у меня есть, который взаимодействует с e.graphics:

'clear area
e.Graphics.FillRectangle(Brushes.Black, 0, 0, 600, 800)
'draw sand
For Each i In world
    e.Graphics.FillRectangle(i.getcolor, i.getx, i.gety, 1, 1)
Next

вот переменные области моих двух классов вместе с их новыми функциями; предположим, что строки get делают то, что, как вы думаете, они делают.

Public Class Sand
    Private x As Integer
    Private y As Integer
    Private type As element
Public Sub New(ByVal x As Integer, ByVal y As Integer, ByVal type As element)
    Me.x = x
    Me.y = y
    Me.type = type
End Sub

Public Class element
    Public color As Color
    Public weight As Integer = 1
    Public spread As Double = 0.5
    Public text As String = "null"
    Public Sub New(ByVal c As Color, ByVal w As Integer, ByVal s As Double, ByVal t As String)
        color = c
        weight = w
        spread = s
        text = t
    End Sub

вот точка в моей программе, которая измеряет переменную мира и тому подобное.

Private world As List(Of Sand)
Private paused As Boolean = False
Private openbottom As Boolean = False
Private selected As Integer = 0
Private elements As List(Of element)
'DEBUG VARIABLES
Private debugmode As Boolean = True
Private framenum As Integer = 0

и вот область в моей отладочной части, которая превращает 4 песчинки в 2 разных элемента.

elements.Add(New element(Color.Azure, 1, 1, "Test El 1"))
elements.Add(New element(Color.Aqua, 1, 1, "Test El 2"))
world.Add(New Sand(240, 400, elements(1)))
world.Add(New Sand(440, 200, elements(1)))
world.Add(New Sand(340, 100, elements(2)))
world.Add(New Sand(540, 400, elements(1)))

1 Ответ

0 голосов
/ 26 июля 2010

Красный крестик над главным окном означает, что ваш пользовательский код для рисования запускает исключение. мир равен нулю?Является ли i нулевым?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...