Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Nolla-arvojen vertailu

Konna [13.06.2006 10:31:07]

#

Mitähän vikaa tässä koodin pätkässä on kun Checkboxeihin ei tule mitää jos Form1.Tekstikentta ja Form2.Tekstikentta ovat nollia? Muilla kokonaisluvuilla toimii...

If Form1.Tekstikentta(i) = Form2.Tekstikentta(k) Then
    Form2.Check(j) = Form1.Check(i)
    Form2.Check2(j) = Form1.Check2(i)
End If

Antti Laaksonen [13.06.2006 12:58:04]

#

Nollien vertailussa ei pitäisi olla mitään erityistä.

Mitä muuttujat i, j ja k ovat? Oletko tarkistanut vertailtavien muuttujien arvot? Oletko tarkistanut, toteutuuko ehto?

Merri [13.06.2006 16:03:30]

#

Parempaa syntaksia:

If Val(Form1.Tekstikentta(i).Text) = Val(Form2.Tekstikentta(k).Text) Then
    Form2.Check(j).Value = Form1.Check(i).Value
    Form2.Check2(j).Value = Form1.Check2(i).Value
End If

Eli, jos haluat verrata kahta asiaa toisiinsa lukuina, muuta ne luvuiksi. Lisäksi on aina erittäin hyvä merkata tarkasti mitä käyttää, eli .Text tai .Value ja niin edelleen. Tämä tekee koodista vähintäänkin helpommin luettavaa eikä tarvitse yrittää muistella, mikä on minkäkin objektin oletusarvo.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta