Jump to content

Recommended Posts

Posted (edited)

Boas!

Pessoal estou com uma dúvida, tenho o seguinto private sub criado

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged

(...)

End sub

A minha questão é a seguinte, pretendia que isto apenas acontecesse, se fosse por acção do utilizador ao clicar e mudar o estado da checkbox.

Com este sub o que me está a acontecer é que ao carregar automaticamente a checkbox ela actua logo, visto que estou a modificar o estado dela... e também actua correctamente quando lá vou clicar.

Nos argumentos deve haver forma de indicar que é por acção do rato, ou utilizador...

Podem ajudar-me sff

Obrigado

Peço desculpa, eu postei já depois de ter feito várias pesquisas, mas acabei de encontrar a minha resposta.

Se interessar a alguém ficou assim

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click

(...)

End sub

Obrigado na mesma, se acharem mais correcto, podem eliminar este post

Edited by sergiotmcardoso
Posted

Isso estava a acontecer porque, decerto, colocaste a propriedade Ckecked a True logo à partida.

O evento que estavas a utilizar continua a ser correcto, a única coisa que tinhas de fazer era "controlar" se a aplicação estava a iniciar ou não. Neste caso, existe uma particularidade que consegue fazer este trabalho:

Private Sub CheckBox1_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles CheckBox1.CheckedChanged
   If CheckBox1.Created Then  'não me enganei, não leva nenhum "Not"
       MsgBox("CheckBox mudou!")
   End If
End Sub

Knowledge is free!

Posted

A propriedade actuava quando eu ao ler dados da base de dados, ia actualizar a checkbox com o checked a true ou false

Olha já agora diz-me uma coisa.

Estou com um problema em relação a um cmapo definido como money no SQL, ou seja, ele na base de dados está por exemplo 45,7000

eu ao carregar o valor na textbox vindo da base de dados mando-o logo para uma variavel definia como single

valor = dr.Item("quota")

TextBox6.Text = valor

ficando a textbox com 45,7 já testei colocar assim TextBox6.Text = format(valor, "0,00") para ver se ele colocava 45,70 mas não funcionou :\

O meu problema principal é que depois quando actualizo a base de dados se for enviar o valor com a virgula o numero da base de dados fica 4570,0000

ou seja tenho que fazer sempre o update mas com ponto 45.70 para correr tudo bem.... ha algum truque para contornar isto?

Posted

Afinal também já conseguir dar a volta 😄

utilizei o replace do VB

ou seja assim

valor = textbox.text

valorcorrecto = replace(valor, ",", ".")

pronto substitui a virgula por ponto antes de fazer o update à base de dados e já fica tudo bem 😄

Obrigado na mesma

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.