none
Erro RRS feed

  • Pergunta

  • Pessoal, Boa Tarde!!

    Quando mando rodar o formulario apareço o seguinte erro:

    Erro ao criar o formulário. Consulte Exception.InnerException para obter detalhes. O erro é: Não é possível converter um objeto do tipo 'System.EventArgs' no tipo 'System.Windows.Forms.KeyPressEventArgs'.

    Será que vocês poderiam me ajudar?

    sexta-feira, 20 de junho de 2014 17:46

Respostas

  •  O erro está em seu ultimo bloco de codigo, você não pode utilizar o evento TextChanged com eventos de teclados, para evento de teclado utilize "KeyDown", "KeyUp"... Faça essa alteração que vai funcionar mas vai perder esse seu evento, para esse evento faça no evento de teclado como citei :

     Private Sub txtDataNasc_MaskInputRejected(ByVal sender As Object, e As System.EventArgs) Handles txtDataNasc.TextChanged
    '        FormataData(txtDataNasc, e.KeyChar)
    
        End Sub
    End Class

    sexta-feira, 20 de junho de 2014 18:11

Todas as Respostas

  • Olá,

      você colocou um evento errado, provavelmente criou errado mostre seu código !

    sexta-feira, 20 de junho de 2014 17:52
  • Imports MySql.Data.MySqlClient

    Public Class frmCadpessoas
        Public caminho As String
        Public codigo As Integer

        Private Sub btnBuscaFoto_Click(sender As System.Object, e As System.EventArgs) Handles btnBuscaFoto.Click
            Dim arquivo As New OpenFileDialog()
            If arquivo.ShowDialog = System.Windows.Forms.DialogResult.OK Then
                caminho = arquivo.FileName.ToString()
                pctFoto.Image = Image.FromFile(caminho)
            End If
        End Sub

        Public Sub LimpaTexts()
            txtDataNasc.Clear()
            txtNome.Clear()
            txtTel.Clear()
            txtNome.Focus()
            Try
                dtR = comando.ExecuteReader

                If dtR.Read Then
                    txtNome.Text = dtR("nome").ToString
                    txtTel.Text = dtR("cel").ToString
                    txtDataNasc.Text = dtR("dtnasc").ToString

                    codigo = dtR("codPessoa")
                Else
                    MessageBox.Show("Pessoa não cadastrada")
                End If
            Catch
                MessageBox.Show(" ERRO DURANTE A PESQUISA")
            End Try
        End Sub

        Private Sub btnVoltar_click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVoltar.Click
            frmPrincipal.Show()

        End Sub

        Private Sub btnSalvar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalvar.Click
            Dim sql As String
            Try
                AbreBaseDados()
                sql = "insert into tbl_pessoa (nome,telefone,datadenascimento,sexo,cpf,endereco) values (@p1,@p2,@p3,@p4,@p5,@p6)"
                comando = New MySqlCommand(sql, conexao)
                comando.Parameters.AddWithValue("@p1", txtNome.Text)
                comando.Parameters.AddWithValue("@p2", txtTel.Text)
                comando.Parameters.AddWithValue("@p3", txtDataNasc.Text)
                comando.Parameters.AddWithValue("@p3", cmbSexo.Text)
                comando.Parameters.AddWithValue("@p3", txtCpf.Text)
                comando.Parameters.AddWithValue("@p3", txtEndereço.Text)

                comando.ExecuteNonQuery()
                MessageBox.Show("Dados cadastrados com sucesso")

            Catch ex As Exception
                MessageBox.Show("Erro na inclusão de cliente")
            End Try
            If txtNome.Text = "" Or txtTel.Text = "" Then
                MessageBox.Show("Os campos nome e telefone são Obrigatórios")
                txtNome.Focus()
                Exit Sub
            End If
        End Sub

        Private Sub btnLimpar_Click(sender As System.Object, e As System.EventArgs) Handles btnLimpar.Click
            LimpaTexts()

        End Sub

        Private Sub txtDataNasc_MaskInputRejected(ByVal sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles txtDataNasc.TextChanged
            FormataData(txtDataNasc, e.KeyChar)

        End Sub
    End Class
    sexta-feira, 20 de junho de 2014 18:00
  •  O erro está em seu ultimo bloco de codigo, você não pode utilizar o evento TextChanged com eventos de teclados, para evento de teclado utilize "KeyDown", "KeyUp"... Faça essa alteração que vai funcionar mas vai perder esse seu evento, para esse evento faça no evento de teclado como citei :

     Private Sub txtDataNasc_MaskInputRejected(ByVal sender As Object, e As System.EventArgs) Handles txtDataNasc.TextChanged
    '        FormataData(txtDataNasc, e.KeyChar)
    
        End Sub
    End Class

    sexta-feira, 20 de junho de 2014 18:11
  • Obrigada... Ajudou bastante.
    sexta-feira, 20 de junho de 2014 19:03