Jump to content

Recommended Posts

Posted

Um Bem Aja a Todos

Agradeço desde já a ajuda

Tenho um ciclo sobre uma Listbox para fazer a contagem de determinados valores segundo o código abaixo.

Sucede que ao utilizar >= ou <= o contador não funciona.

Se utilizar apenas o sinal = já funciona.

Podem esclarecer-me sobre o assunto?

Private Sub Jogador2_Jogar()

        Dim ContaCarta As Integer = 0

        For Y As Integer = 0 To ListBox2.Items.Count - 1

            If ListBox2.Items.Item(Y).ToString >= 14 Or ListBox2.Items.Item(Y).ToString <= 26 Then

                ContaCarta += 1

            End If

        Next


    End Sub
Posted

boas

testa assim:

If (ListBox2.Items.Item(Y).ToString >= 14) Or (ListBox2.Items.Item(Y).ToString <= 26) Then

porque dizes isto «Sucede que ao utilizar >= ou <= o contador não funciona.»?

já viste se os valores dos parâmetros  estão corretos e não faz nada?  coloca breakpoints, corre o código, coloca o rato sobre as variáveis e depura o código.

cumps

acao 

Posted

Boas, não sei se estou a ver mal (já há muito tempo que não mexo nisto) mas não estás a converter para string e só depois fazes a comparação? Esse tipo de comparação pode ser com Strings? Não tem que ser com Integers ou algo parecido?

Experimenta comparar antes de converteres para String.

Boa sorte.

Férias! Estou por aqui: http://maps.google.p...001549&t=h&z=20 (a bulir claro está!)

Nunca mais é verão outra vez.. :)

Posted

Obrigado pela atenção acao

quanto ao problema continua na mesma.

Perguntas porque eu digo «Sucede que ao utilizar >= ou <= o contador não funciona.»?

Porque com este código funciona

  If ListBox2.Items.Item(Y) = 14 Or ListBox2.Items.Item(Y) = 15 Or ListBox2.Items.Item(Y) = 16 Or ListBox2.Items.Item(Y) = 17 Or ListBox2.Items.Item(Y) = 18 Or ListBox2.Items.Item(Y) = 19 _
                Or ListBox2.Items.Item(Y) = 20 Or ListBox2.Items.Item(Y) = 21 Or ListBox2.Items.Item(Y) = 22 Or ListBox2.Items.Item(Y) = 23 Or ListBox2.Items.Item(Y) = 24 Or ListBox2.Items.Item(Y) = 25 _
                Or ListBox2.Items.Item(Y) = 26 Then

                ContaCarta += 1

            End If
Posted
3 horas atrás, Gnrtuga disse:

Boas, não sei se estou a ver mal (já há muito tempo que não mexo nisto) mas não estás a converter para string e só depois fazes a comparação? Esse tipo de comparação pode ser com Strings? Não tem que ser com Integers ou algo parecido?

Experimenta comparar antes de converteres para String.

Boa sorte.

è isso estás a converter para string, converte para int , usa a função Cint ou toInt() ou  se assegurares que a listbox  é numérica  podes simplemente tirar o toString

 

para assegurar que é numérico deves usar a função «isnumeric»

 

cumps

acao

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.