Jump to content
Chamuanza

Contador não Funciona

Recommended Posts

Chamuanza

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

 

Share this post


Link to post
Share on other sites
acao

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 

Share this post


Link to post
Share on other sites
Gnrtuga

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.. :)

Share this post


Link to post
Share on other sites
Chamuanza

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

 

Share this post


Link to post
Share on other sites
acao
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

Share this post


Link to post
Share on other sites
Chamuanza

RESOLVIDO

Estava a usar mal o parametro

 If ListBox2.Items.Item(Y) >= 1 And ListBox2.Items.Item(Y) <= 13 Then

                    ContaCarta += 1

                End If

 

Edited by Chamuanza
Resolvido

Share this post


Link to post
Share on other sites

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.