Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
lulucbr

Ajudinha com um programa em Vb.net?

Recommended Posts

Eu estou aprendendo a linguagem vb.net agora, e estou fazendo um programinha de cadastro de cliente que funciona assim:

O usuário tem que clicar no botão novo, cadastrar o cliente e depois salvar, se ele cadastrar e salvar sem clicar em novo o programa da bug.

Eu queria uma maneira de enquanto o usuário não clicar em novo, as caixas de texto ficarem desabilitadas, será que alguém tem alguma ideia de como fazer isso?

Código

 

Public Class Cadastrando_cliente  Private Sub Cadastrando_cliente_Load(sender As Object, e As EventArgs) Handles MyBase.Load        Me.TabClienteTableAdapter.Fill(Me.BdClienteDataSet.tabCliente)        Me.TabClienteBindingSource.AddNew()    End Sub    Private Sub TabClienteDataGridView_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles TabClienteDataGridView.CellContentClick    End Sub    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles But_salvar.Click        Me.Validate()        Me.TabClienteBindingSource.EndEdit()        Me.TableAdapterManager.UpdateAll(Me.BdClienteDataSet)        If NomeTextBox.Text <> "" Then            MsgBox("Salvo com sucesso", MsgBoxStyle.Information, Title:="Sucesso!")        Else            MsgBox("Preencha o seu nome", MsgBoxStyle.Exclamation, Title:="Aviso!")            NomeTextBox.Focus()        End If    End Sub    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles But_novo.Click        Me.TabClienteBindingSource.AddNew()        NomeTextBox.Focus()    End Sub    Private Sub EstadoComboBox_SelectedIndexChanged(sender As Object, e As EventArgs) Handles EstadoComboBox.SelectedIndexChanged    End Sub     Private Sub TabClienteBindingNavigator_RefreshItems(sender As Object, e As EventArgs)    End Sub    Private Sub BindingNavigatorCountItem_Click(sender As Object, e As EventArgs)    End Sub    Private Sub IdClienteTextBox_TextChanged(sender As Object, e As EventArgs) Handles IdClienteTextBox.TextChanged    End Sub    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles But_excluir.Click        Try            Dim linha As bdClienteDataSet.tabClienteRow = BdClienteDataSet.tabCliente.Rows(TabClienteBindingSource.Position)            Dim codigo As Integer = linha.IdCliente            TabClienteTableAdapter.DeleteQuery(codigo)        Catch ex As Exception        End Try        Me.TabClienteTableAdapter.Fill(BdClienteDataSet.tabCliente)    End Sub    Private Sub NomeTextBox_TextChanged(sender As Object, e As EventArgs) Handles NomeTextBox.TextChanged    End Sub    Private Sub AtivoCheckBox_CheckedChanged(sender As Object, e As EventArgs) Handles AtivoCheckBox.CheckedChanged    End Sub    Private Sub CidadeTextBox_TextChanged(sender As Object, e As EventArgs) Handles CidadeTextBox.TextChanged    End Sub    Private Sub CidadeLabel_Click(sender As Object, e As EventArgs)    End Sub    Private Sub EnderecoTextBox_TextChanged(sender As Object, e As EventArgs) Handles EnderecoTextBox.TextChanged    End Sub    Private Sub EnderecoLabel_Click(sender As Object, e As EventArgs)    End Sub    Private Sub CelularLabel_Click(sender As Object, e As EventArgs)    End Sub    Private Sub TelefoneLabel_Click(sender As Object, e As EventArgs)    End Sub    Private Sub NomeLabel_Click(sender As Object, e As EventArgs)    End Sub    Private Sub IdClienteLabel_Click(sender As Object, e As EventArgs)    End Sub    Private Sub MaskedTextBox1_MaskInputRejected(sender As Object, e As MaskInputRejectedEventArgs) Handles TelTextBox1.MaskInputRejected    End Sub    Private Sub MaskedTextBox2_MaskInputRejected(sender As Object, e As MaskInputRejectedEventArgs) Handles CelTextBox2.MaskInputRejected    End Sub    Private Sub AtivoLabel_Click(sender As Object, e As EventArgs)    End Sub    Private Sub EstadoLabel_Click(sender As Object, e As EventArgs)    End SubEnd Class
Editado por dif
poste o código no fórum.. evite de postar em links.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Eu estou aprendendo a linguagem vb.net agora, e estou fazendo um programinha de cadastro de cliente que funciona assim:

O usuário tem que clicar no botão novo, cadastrar o cliente e depois salvar, se ele cadastrar e salvar sem clicar em novo o programa da bug.

Eu queria uma maneira de enquanto o usuário não clicar em novo, as caixas de texto ficarem desabilitadas, será que alguém tem alguma ideia de como fazer isso?

Código



Amigo, você provávelmente está com algum problema de Unsafe GUI Calls, e acontece esse bug porquê você está acessando um componente de um thread no qual ele não foi criado.

Leia isto:

http://msdn.microsoft.com/en-us/library/ms171728(v=vs.85).aspx Editado por dif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Enfia todas as caixas de texto dentro de uma groupbox e deixe no load do form como groupbox1.enable = false

depois quando o botão add é precionado passa o seguinte groupbox1.enable = true

depois quando o botão salvar é precionado groupbox1.enable = false

assim os campos só abrem quando é precionado add de novo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu faço assim, crio uma função para habilitar e desabilitar botões, tipo:

Private Sub HabDesBotoes(ByVal Habilitar As Boolean)   Dim vButtons as Button() = {btnCancelar,btnSalvar}   For index = 0 To vButtons .Length - 1       vButtons(index).enabled = Habilitar   NextEnd Sub

Ai, dentro do evento MyBase.Load coloco:

HabDesBotoes(False)

Depois, no evento de click do botão novo você coloca True.

 

Att,

 

Rafael

Editado por HiperTecnologia

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×