Gå til innhold

An error occurred creating the form


Gjest Slettet-aNZFa3

Anbefalte innlegg

Gjest Slettet-aNZFa3

Fikk plutselig denne erroren i Debug'n når jeg skulle prøve applikasjonen, jeg hadde ikke endret på noe før og etter jeg fikk denne erroren. Den bare kom.

 

Additional information: An error occurred creating the form. See Exception.InnerException for details. The error is: Index was out of range. Must be non-negative and less than the size of the collection.

Parameter name: index

 

Her er kildekoden min:

Klikk for å se/fjerne innholdet nedenfor
Imports Microsoft.DirectX.DirectDraw

Imports Microsoft.DirectX

Public Class frmPlanets

Public DX As New Device

Dim frmLocation As Point

Private Sub MainForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

frmLocation = Me.Location

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Jorda)"

End Sub

 

Private Sub chkFullScreen_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkFullScreen.CheckedChanged

If chkFullScreen.Checked = True Then

Try

Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None

DX.SetDisplayMode(Me.Width, Me.Height, 32, 60, True)

DX.SetCooperativeLevel(Me, CooperativeLevelFlags.FullscreenExclusive)

Catch ex As Exception

MsgBox(ex.Message)

End Try

Else

Try

DX.SetCooperativeLevel(Me, CooperativeLevelFlags.Normal)

Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Sizable

Me.Location = frmLocation

Catch ex As Exception

MsgBox(ex.Message)

End Try

End If

End Sub

 

Private Sub valGrav_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles valGrav.Scroll

CalculateGrav()

End Sub

 

Private Sub nmrDecimal_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nmrDecimal.ValueChanged

CalculateGrav()

If nmrDecimal.Value >= 10 Then

valGrav.Value += 1

nmrDecimal.Value = 0

End If

If nmrDecimal.Value < 0 Then

valGrav.Value -= 1

nmrDecimal.Value = 9

End If

End Sub

 

Public Sub CalculateGrav()

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value

If grdInfo.Rows.Count = 2 Then

grdInfo.Rows.Clear()

End If

If valGrav.Value = 3 Then

If nmrDecimal.Value = 7 Then

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Merkur / Mars)"

grdInfo.Rows.Add()

grdInfo.Item("Navn", 0).Value = "Merkur"

grdInfo.Item("Masse", 0).Value = "0,33E24 Kg"

grdInfo.Item("Gravitasjon", 0).Value = "3,7"

grdInfo.Item("Navn", 1).Value = "Mars"

grdInfo.Item("Masse", 1).Value = "0,64E24 Kg"

grdInfo.Item("Gravitasjon", 1).Value = "3,7"

End If

End If

If valGrav.Value = 8 Then

If nmrDecimal.Value = 9 Then

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Venus)"

grdInfo.Item("Navn", 0).Value = "Venus"

grdInfo.Item("Masse", 0).Value = "4,9E24 Kg"

grdInfo.Item("Gravitasjon", 0).Value = "8,9"

End If

End If

If valGrav.Value = 9 Then

If nmrDecimal.Value = 8 Then

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Jorda)"

grdInfo.Item("Navn", 0).Value = "Tellus"

grdInfo.Item("Masse", 0).Value = "6E24 Kg"

grdInfo.Item("Gravitasjon", 0).Value = "9,8"

End If

End If

If valGrav.Value = 23 Then

If nmrDecimal.Value = 0 Then

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Jupiter)"

grdInfo.Item("Navn", 0).Value = "Jupiter"

grdInfo.Item("Masse", 0).Value = "1900E24 Kg"

grdInfo.Item("Gravitasjon", 0).Value = "23"

End If

End If

If valGrav.Value = 10 Then

If nmrDecimal.Value = 0 Then

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Saturn)"

grdInfo.Item("Navn", 0).Value = "Saturn"

grdInfo.Item("Masse", 0).Value = "570E24 Kg"

grdInfo.Item("Gravitasjon", 0).Value = "10"

End If

End If

If valGrav.Value = 7 Then

If nmrDecimal.Value = 8 Then

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Uranus)"

grdInfo.Item("Navn", 0).Value = "Uranus"

grdInfo.Item("Masse", 0).Value = "87E24 Kg"

grdInfo.Item("Gravitasjon", 0).Value = "7,8"

End If

End If

If valGrav.Value = 11 Then

If nmrDecimal.Value = 0 Then

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Neptun)"

grdInfo.Item("Navn", 0).Value = "MNeptun"

grdInfo.Item("Masse", 0).Value = "103E24 Kg"

grdInfo.Item("Gravitasjon", 0).Value = "11"

End If

End If

If valGrav.Value = 0 Then

If nmrDecimal.Value = 7 Then

lblGravity.Text = "Gravity: " & valGrav.Value & "," & nmrDecimal.Value & " (Pluto)"

grdInfo.Item("Navn", 0).Value = "Pluto"

grdInfo.Item("Masse", 0).Value = "0,005E24 Kg"

grdInfo.Item("Gravitasjon", 0).Value = "0,7"

End If

End If

End Sub

End Class

 

Først og fremst så lager jeg denne applikasjonen for å jobbe med fysikk teoretisk. Jeg kommer til å legge inn alt man lærer i FY2, bare jeg kommer igjennom denne erroren først, vel og merke.

 

EDIT: Jeg tror det kan være at RowIndex'n er på -1. Jeg har 1 column i grdInfo, så da skal det egentlig ikke være noe problem? Noen som har en løsning?

Endret av Slettet-aNZFa3
Lenke til kommentar
Videoannonse
Annonse

Lær deg å debugge skikkelig.

Sett breakpoints og step igjennom koden, så vil du se hva som er galt.

 

Sannsynligvis så endres en verdi i en kontroll, som får den til å prøve å hente noe i en liste før det er lagt noen verdier i den.

 

Men det er veldig vanskelig å se bare ved å kikke på denne koden.

 

Sett breakpoints med F9 step over med F10 og step igjennom med F11.

Hold over variabler eller velg uttryk for å se verdien i dem.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...