Quinta-feira, 17 de Setembro de 2015
Desenvolvimento de Software – Mobile
Décima Quinta aula do professor Marcelo
Crie um Sistema com os seguintes campos:
Form1 para Cadastrar Produtos:
Código: 1 Label e 1 TextBox
Produto: 1 Label e 1 TextBox
Valor: 1 Label e 1 TextBox
Tabela Produtos.
Form2 para Cadastrar Fornecedor
Registro: 1 Label e 1 TextBox
Fornecedor: 1 Label e 1 TextBox
Endereço: 1 Label e 1 TextBox
Tabela Fornecedores.
Form3 para Cadastrar Clientes
Matrícula: 1 Label e 1 TextBox
Comprador: 1 Label e 1 TextBox
Bairro: 1 Label e 1 TextBox ou ComboBox
Tabela Clientes
Nos três forms, pôr botões (Button): Arquivar, Excluir e Sair. Usar a codificação relacionada aos forms (ver as aulas passadas).
Configurar as propriedades (em Properties) de todos os objetos inseridos nos forms.
Para adicionar Form: Project >> Add Windows Form >> Add >> Ok.
Form4 – Browser >> Navegador Web (NOVO)
Pôr no form4: 1 WebBrowser / 1 Label (Site) / 1 TextBox / 1 Button (IR). Na propriedade Text do Form4, nomeie o Form4, isto é, dê um nome ao seu navegador. Ver a figura 1:
Dê duplo clique no Form4, mude de Form4_Load para Resize e digite o código:
WebBrowser1.Width = Me.Width – 30
WebBrowser1.Height = Me.Height
Em seguida, volte ao modo Form Disign, dê dois cliques no Button1(IR) e digite:
WebBrowser1.Navigate(TextBox1.Text)
Selecione o Form4 e na propriedade Windows State, mude para Maximized.
Form5: Grade para visualizar a Tabela Produtos.
Form6: Grade para visualizar a Tabela Fornecedores.
Form7: Grade para visualizar a Tabela Clientes.
Form8: Menu, contendo: Arquivo (Produtos / Fornecedores / Clientes / ——– / Listar Produtos / Listar Fornecedores / Listar Clientes / —— / Navegador Web / Sair); Editar (Copiar / Recortar / —– / Colar); Ajuda (Sistema).
O form1 para cadastrar produtos, o form2 para cadastrar fornecedores e o form3 para cadastrar clientes devem ter, cada um, um Class.
OBSERVAÇÃO: Criar um único Banco de Dados com TRÊS tabelas: Produtos, Fornecedores e Clientes.
Banco de Dados
Abra o aplicativo Microsoft Access: escolha a opção Banco de Dados em Branco, escolha o diretório C (crie uma pasta com o nome Banco na unidade C), dê um nome ao arquivo e escolha o tipo 2002-2003, dê ok e clique em criar. Pronto, o arquivo criado foi gravado dentro da pasta Banco.
Clique com o botão direito em Tabela e clique em Modo Disign. A seguir, nomeie a tabela Produtos. Em Nome do Campo, nomeie com os atributos: Código (Número, Tamanho do Campo: Inteiro Longo), Produtos (Texto, Tamanho 20), Valor (Moeda, Moeda). A seguir, salve.
Clique com o botão direito em Tabela e clique em Modo Disign. A seguir, nomeie a tabela Fornecedor. Em Nome do Campo, nomeie com os atributos: Registro (Número, Tamanho do Campo: Inteiro Longo), Fornecedor (Texto, Tamanho 30), Endereço (Texto, Tamanho 30). A seguir, salve.
Clique com o botão direito em Tabela e clique em Modo Disign. A seguir, nomeie a tabela Clientes. Em Nome do Campo, nomeie com os atributos: Matricula (Número, Tamanho do Campo: Inteiro Longo), Comprador (Texto, Tamanho 50), Bairro (Texto, Tamanho 20). A seguir, salve e feche o Access.
———————————————–
Construir o Form5 Listar Produtos
Colocar no Form5 em Toolbox: no Containers >> 1 GroupBox, no Data >> 1 DataGridView, no Common Controls >> 1 Label (Buscar Produto) e 1 TextBox.
No Form5 Propertier >> MaximizeBox >> False e MinimizeBox >> False.
No DataGridView clique no botão, conforme a figura 2 abaixo, então abre DataGridView Tasks, figura 3.
Estando no DataGridView Tasks, escolha a opção Add Columm, então abre a figura 4:
Agora clique em Name Column1 e Header Text Column1 e digite o nome do primeiro campo da tabela Produtos que é Código e clique em Add. Feito isso, em seguida faça para todos os outros campos: Produto e Valor. Feche a janela Add Column.
Na sequência, na janela DataGridView Tasks, desmarque: Enable Adding, Enable Editing, Enable Deleting e Enable Column Reordering. E feche esta janela. Veja a figura 5:
Ainda em DataGridView Tasks, clique em Edit Columns para pôr nomes nos campos correspondentes, para não haver campos duplicados durante a visualização dos dados na tabela. Para tanto, na opção Selected Columns selecione o campo Codigo e em seguida na opção DataPropertyName digite codigo. Depois repita para os demais campos. Veja a figura 6:
Ainda no Form5, selecione DataGridView >> Properties >> SelectMode >> FullRowSelect
Veja a grade Listar Produtos na figura 7:
Clique no Form5, num local que não seja no DataGridView, para escrever o código para este objeto:
Private Sub Form5_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim obj_Grade As New Produtos
DataGridView1.DataSource = obj_Grade.grade(TextBox1.Text)
End Sub
Ainda no Form5, clique no TextBox1 e digite o mesmo código anterior:
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
Dim obj_Grade As New Produtos
DataGridView1.DataSource = obj_Grade.grade(TextBox1.Text)
End Sub
Construir o Form6 Listar Fornecedores
Adicione o form6 para listar fornecedores. Para tanto, proceda da mesma forma que no listar produtos. Veja o Form6 Listar Fornecedores na figura 8:
Construir o Form7 Listar Clientes
Proceda da mesma forma para adicionar o Form7 que é para Listar Clientes. Veja a figura 9:
Construir o Class
Em seguida, adicione um Class para o Form1, para o Form2 e para o Form3, para conectar-se às tabelas correspondentes do Banco de Dados.
Conectando o Banco de Dados com o Sistema
Para colocar um novo módulo chamado Class, proceda: na guia Project >> Add Class … >> Class (em Templates) >> Name: (nomeie a Class) >> Add. Pronto.
Veja os códigos completos abaixo.
Para inserir número de linhas no código proceda: Tools >> Options… >> Text Editor >> Basic >> Editor >> No quadro ao lado escolha: Line numbers.
———————————–
Construir o Form8 para Menus
Construir a tela de Menus para chamar o Form1, o Form2, o Form3, o Form4, o Form5, o Form6 e o Form7: Project >> Add Windows Form >> Add >> Ok.
Selecione o Form8 e em properties >> WindowState >> Maximized e em IsMdiContainer >> True.
Colocar no Form8 em Toolbox: no Menus & Toolbars 1 MenuStrip, 1 StatusStrip e 1 ToolStrip.
No MenuStrip1 preencha os campos conforme a figura 10:
Para colocar a linha que está acima da opção Sair, basta digitar dentro do campo o sinal de menos – . Prossiga preenchendo os outros de acordo com as figuras 11 e 12:
No menu Editar, selecione a opção Copiar para colocar Ctrl+C em properties >> Shortcutkeys >> Ctrl+C. Proceda da mesma forma para Recortar (Ctrl+T) e para Cola (Ctrl+R).
O professor Marcelo não tratou, na aula de hoje, o Menu Editar e nem o menu Ajuda.
Abaixo do MenuStrip1, selecione o ToolStrip para adicionar imagens que servirão de atalho para chamar os menus acima. Na imagem abaixo já estão construídos todos os botões para este exemplo. No entanto, para ilustrar com total visibilidade, o procedimento para inserir os botões (Button) e os separadores (Separator), veja a figura 13:
Feito isso, clique com o botão direito do mouse no primeiro botão e em seguida clique em Set Image… Veja a figura 14:
Na janela Select Resource clique em Import… para escolher uma imagem e em seguida clique em Ok. Proceda desta forma para os outros botões. Veja a figura 15:
Selecione o primeiro botão e em Properties >> ToolTipText >> Produtos. No segundo botão em Properties >> ToolTipText >> Fornecedores. No terceiro botão em Properties >> ToolTipText >> Clientes. No quarto botão em Properties >> ToolTipText >> Listar Produtos. No quinto botão em Properties >> ToolTipText >> Listar Fornecedores. No sexto botão em Properties >> ToolTipText >> Listar Clientes. No sétimo botão em Properties >> ToolTipText >> Navegador Web. No oitavo botão em Properties >> ToolTipText >> Sair. Os outros botões ainda não foram tratados, pois eles são referentes aos menus Editar e Ajuda.
No Form1, retire o comando End do botão Sair e escreva Me.Close(), conforme o exemplo abaixo:
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Me.Close()
End Sub
Faça o mesmo para o Form2 e para o Form3 no botão Sair.
No Form8 Menu, dê duplo clique na opção Sair (no menu Arquivo) e ecreva End no código:
Private Sub SairToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SairToolStripMenuItem.Click
End
End Sub
Nos três Class, escreva o código referente às Grades do Listar Produtos, do Listar Fornecedores e do Listar Clientes. Por exemplo:
Public Function grade(ByVal xnomep As String) As DataTable
Dim tab As New DataTable
Dim conn As New OleDbConnection(strcon)
Dim sql As String = “select * from Produtos where produtos like @produtos order by produtos”
Dim adaptador As New OleDbDataAdapter(sql, conn)
adaptador.SelectCommand.Parameters.Add(“@produtos”, OleDbType.VarChar, 20).Value = xnomep & “%”
conn.Open()
adaptador.Fill(tab)
Return tab
End Function
Observação: no código: Dim sql As String = “select * from Produtos where produtos like @produtos order by produtos”, a palavra Produtos é o nome da tabela de produtos no Banco de Dados.
Agora faça o mesmo no Class referente à tabela Fornecedores e à tabela Clientes.
Veja os códigos do Form1, do Form2, do Form3, do Form4, do Form5, do Form6, do Form7, do Form8 e dos Class abaixo:
Código do Form1 – Cadastrar Produtos
Public Class Form1
Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
TextBox2.Focus()
End If
End Sub
Private Sub TextBox2_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox2.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
TextBox3.Focus()
End If
End Sub
Private Sub TextBox3_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox3.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button1.Focus()
End If
End Sub
Private Sub Button1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button1.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button2.Focus()
End If
End Sub
Private Sub Button2_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button2.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button3.Focus()
End If
End Sub
Private Sub Button3_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button3.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
TextBox1.Focus()
End If
End Sub
Private Sub TextBox2_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox2.LostFocus
TextBox2.Text = UCase(TextBox2.Text)
End Sub
Private Sub TextBox1_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.LostFocus
If TextBox1.Text = “” Then TextBox1.Focus() : Exit Sub
Dim cod As Integer = TextBox1.Text
TextBox1.Text = String.Format(“{0:D5}”, cod)
‘——————————————————-
Dim puxar1 As Produtos
puxar1 = New Produtos(TextBox1.Text, TextBox2.Text, TextBox3.Text)
Dim puxar2 As Produtos
puxar2 = New Produtos
puxar2.puxar(puxar1)
‘Colocando os dados do Banco de Dados nos campos
TextBox2.Text = puxar1.yproduto
TextBox3.Text = puxar1.yvalor
‘Verificando se tem algum nome sendo importado do Banco de Dados
‘Se tiver, troca o nome do button1 para Alterar
‘Se não tiver, o nome do button1 fica como Arquivar
If puxar1.yproduto = “” Then
Button1.Text = “&Arquivar”
Button2.Enabled = False
Else
Button1.Text = “&Alterar”
Button2.Enabled = True
End If
End Sub
‘ Aparecer mensagem de erro
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If TextBox1.Text = “” Or TextBox1.Text = “0” Then
MsgBox(“Preencha o Campo Código”, MsgBoxStyle.Exclamation, “Aviso…”)
TextBox1.Focus()
End If
If TextBox2.Text = “” Or TextBox2.Text = “0” Then
MsgBox(“Preencha o Campo Produto”, MsgBoxStyle.Exclamation, “Aviso…”)
TextBox2.Focus()
End If
If TextBox3.Text = “” Or TextBox3.Text = “0” Then
MsgBox(“Preencha o Campo Valor”, MsgBoxStyle.Exclamation, “Aviso…”)
TextBox3.Focus()
End If
‘————————————————————
‘Gravar e Alterar
Dim obj As New Produtos
Dim gravou As Boolean
If Button1.Text = “&Alterar” Then
gravou = obj.alterar(TextBox1.Text, TextBox2.Text, TextBox3.Text)
Else
gravou = obj.gravar(TextBox1.Text, TextBox2.Text, TextBox3.Text)
End If
TextBox1.Text = 0
TextBox2.Text = “”
TextBox3.Text = 0
Button1.Text = “&Arquivar”
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.Text = 0
Limpar()
End Sub
Sub Limpar()
TextBox3.Text = FormatCurrency(0, 2)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim obj As New Produtos
Dim gravou As Boolean
Dim resp As String = “”
resp = MsgBox(“Deseja mesmo excluir?”, MsgBoxStyle.Critical + MsgBoxStyle.YesNo, “Aviso…”)
If resp = vbYes Then
gravou = obj.excluir(TextBox1.Text)
TextBox1.Text = 0
TextBox2.Text = “”
TextBox3.Text = 0
Button1.Text = “&Arquivar”
Button2.Enabled = False
TextBox1.Focus()
End If
End Sub
Private Sub TextBox3_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox3.LostFocus
TextBox3.Text = FormatCurrency(TextBox3.Text, 2)
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Me.Close()
End Sub
End Class
figura 25 – Tela do Menu abrindo o Form1 no modo Alterar/Excluir
Código do Form2 – Cadastrar Fornecedores
Public Class Form2
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.Text = 0
End Sub
Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
TextBox2.Focus()
End If
End Sub
Private Sub TextBox2_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox2.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
TextBox3.Focus()
End If
End Sub
Private Sub TextBox3_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox3.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button1.Focus()
End If
End Sub
Private Sub Button1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button1.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button2.Focus()
End If
End Sub
Private Sub Button2_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button2.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button3.Focus()
End If
End Sub
Private Sub Button3_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button3.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
TextBox1.Focus()
End If
End Sub
Private Sub TextBox2_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox2.LostFocus
TextBox2.Text = UCase(TextBox2.Text)
End Sub
Private Sub TextBox1_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.LostFocus
If TextBox1.Text = “” Then TextBox1.Focus() : Exit Sub
Dim cod As Integer = TextBox1.Text
TextBox1.Text = String.Format(“{0:D5}”, cod)
‘———————————————————-
Dim puxar1 As Fornecedor
puxar1 = New Fornecedor(TextBox1.Text, TextBox2.Text, TextBox3.Text)
Dim puxar2 As Fornecedor
puxar2 = New Fornecedor
puxar2.puxar(puxar1)
‘Colocando os dados do Banco de Dados nos campos
TextBox2.Text = puxar1.yfornecedor
TextBox3.Text = puxar1.yendereco
‘Verificando se tem algum nome sendo importado do banco de dados
‘Se tiver, o nome do button1 troca de Arquivar para Alterar
‘Se não tiver, o nome do button1 fica como Arquivar
If puxar1.yfornecedor = “” Then
Button1.Text = “&Arquivar”
Button2.Enabled = False
Else
Button1.Text = “&Alterar”
Button2.Enabled = True
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If TextBox1.Text = “” Or TextBox1.Text = “0” Then
MsgBox(“Preencha o Campo Registro”, MsgBoxStyle.Exclamation, “Aviso…”)
TextBox1.Focus()
End If
If TextBox2.Text = “” Or TextBox2.Text = “0” Then
MsgBox(“Preencha o Campo Fornecedor”, MsgBoxStyle.Exclamation, “Aviso…”)
TextBox2.Focus()
End If
If TextBox3.Text = “” Or TextBox3.Text = “0” Then
MsgBox(“Preencha o Campo Endereço”, MsgBoxStyle.Exclamation, “Aviso…”)
TextBox3.Focus()
End If
‘———————————————————
‘Gravar e Alterar
Dim obj As New Fornecedor
Dim gravou As Boolean
If Button1.Text = “&Alterar” Then
gravou = obj.alterar(TextBox1.Text, TextBox2.Text, TextBox3.Text)
Else
gravou = obj.gravar(TextBox1.Text, TextBox2.Text, TextBox3.Text)
End If
TextBox1.Text = 0
TextBox2.Text = “”
TextBox3.Text = “”
Button1.Text = “&Arquivar”
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim obj As New Fornecedor
Dim gravou As Boolean
Dim resp As String = “”
resp = MsgBox(“Deseja mesmo excluir?”, MsgBoxStyle.Critical + MsgBoxStyle.YesNo, “Aviso…”)
If resp = vbYes Then
gravou = obj.excluir(TextBox1.Text)
TextBox1.Text = 0
TextBox2.Text = “”
TextBox3.Text = “”
Button1.Text = “&Arquivar”
Button2.Enabled = False
TextBox1.Focus()
End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Me.Close()
End Sub
End Class
Código do Form3 – Cadastrar Clientes
Public Class Form3
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.Text = 0
ComboBox1.Items.Add(“Bangu”)
ComboBox1.Items.Add(“Campo Grande”)
ComboBox1.Items.Add(“Santa Cruz”)
ComboBox1.Items.Add(“Meier”)
ComboBox1.Items.Add(“Realengo”)
ComboBox1.SelectedIndex = 1
End Sub
Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
TextBox2.Focus()
End If
End Sub
Private Sub TextBox2_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox2.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
ComboBox1.Focus()
End If
End Sub
Private Sub ComboBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles ComboBox1.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button1.Focus()
End If
End Sub
Private Sub Button1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button1.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button2.Focus()
End If
End Sub
Private Sub Button2_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button2.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
Button3.Focus()
End If
End Sub
Private Sub Button3_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button3.KeyDown
If e.KeyCode = Keys.Enter Then
e.SuppressKeyPress = True
TextBox1.Focus()
End If
End Sub
Private Sub TextBox2_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox2.LostFocus
TextBox2.Text = UCase(TextBox2.Text)
End Sub
Private Sub TextBox1_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.LostFocus
If TextBox1.Text = “” Then TextBox1.Focus() : Exit Sub
Dim cod As Integer = TextBox1.Text
TextBox1.Text = String.Format(“{0:D5}”, cod)
‘—————————————————————–
Dim puxar1 As Clientes
puxar1 = New Clientes(TextBox1.Text, TextBox2.Text, ComboBox1.Text)
Dim puxar2 As Clientes
puxar2 = New Clientes
puxar2.puxar(puxar1)
‘Colocando os dados do Banco de Dados nos campos
TextBox2.Text = puxar1.ycomprador
ComboBox1.Text = puxar1.ybairro
‘Verificando se tem algum nome sendo importado do Banco de Dados
‘Se tiver, troca o nome do button1 para Alterar
‘Se não tiver, o nome do button1 fica como Arquivar
If puxar1.ycomprador = “” Then
Button1.Text = “&Arquivar”
Button2.Enabled = False
Else
Button1.Text = “&Alterar”
Button2.Enabled = True
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If TextBox1.Text = “” Or TextBox1.Text = “0” Then
MsgBox(“Preencha o Campo Matrícula”, MsgBoxStyle.Exclamation, “Aviso…”)
TextBox1.Focus()
End If
If TextBox2.Text = “” Or TextBox2.Text = “0” Then
MsgBox(“Preencha o Campo Comprador”, MsgBoxStyle.Exclamation, “Aviso…”)
TextBox2.Focus()
End If
If ComboBox1.Text = “” Or ComboBox1.Text = “0” Then
MsgBox(“Preencha o Campo Bairro”, MsgBoxStyle.Exclamation, “Aviso…”)
ComboBox1.Focus()
End If
‘——————————————————————-
‘Gravar e Alterar
Dim obj As New Clientes
Dim gravou As Boolean
If Button1.Text = “&Alterar” Then
gravou = obj.alterar(TextBox1.Text, TextBox2.Text, ComboBox1.Text)
Else
gravou = obj.gravar(TextBox1.Text, TextBox2.Text, ComboBox1.Text)
End If
TextBox1.Text = 0
TextBox2.Text = “”
ComboBox1.Text = “”
Button1.Text = “&Arquivar”
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim obj As New Clientes
Dim gravou As Boolean
Dim resp As String = “”
resp = MsgBox(“Deseja mesmo excluir?”, MsgBoxStyle.Critical + MsgBoxStyle.YesNo, “Aviso…”)
If resp = vbYes Then
gravou = obj.excluir(TextBox1.Text)
TextBox1.Text = 0
TextBox2.Text = “”
ComboBox1.Text = “”
Button1.Text = “&Arquivar”
Button2.Enabled = False
TextBox1.Focus()
End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Me.Close()
End Sub
End Class
Código do Form4 – Navegador Web
Public Class Form4
Private Sub Form4_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize
WebBrowser1.Width = Me.Width – 30
WebBrowser1.Height = Me.Height
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
WebBrowser1.Navigate(TextBox1.Text)
End Sub
End Class
figura 30 – Tela do Menu abrindo o Form5 no modo Listar Produtos
Código do Form5 – Listar Produtos
Public Class Form5
Private Sub Form5_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim obj_Grade As New Produtos
DataGridView1.DataSource = obj_Grade.grade(TextBox1.Text)
End Sub
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
Dim obj_Grade As New Produtos
DataGridView1.DataSource = obj_Grade.grade(TextBox1.Text)
End Sub
End Class
figura 31 – Tela do Menu abrindo o Form5 no modo Buscar Produtos
figura 32 – Tela do Menu abrindo o Form6 no modo Listar Fornecedores
Código do Form6 – Listar Fornecedores
Public Class Form6
Private Sub Form6_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim obj_Grade As New Fornecedor
DataGridView1.DataSource = obj_Grade.grade(TextBox1.Text)
End Sub
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
Dim obj_Grade As New Fornecedor
DataGridView1.DataSource = obj_Grade.grade(TextBox1.Text)
End Sub
End Class
Código do Form7 – Listar Clientes
Public Class Form7
Private Sub Form7_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim obj_Grade As New Clientes
DataGridView1.DataSource = obj_Grade.grade(TextBox1.Text)
End Sub
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
Dim obj_Grade As New Clientes
DataGridView1.DataSource = obj_Grade.grade(TextBox1.Text)
End Sub
End Class
Código do Form8 – Menu
Public Class Form8
Private Sub ProdutosToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProdutosToolStripMenuItem.Click
Form1.MdiParent = Me
Form1.Show()
End Sub
Private Sub FornecedorToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FornecedorToolStripMenuItem.Click
Form2.MdiParent = Me
Form2.Show()
End Sub
Private Sub ClientesToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ClientesToolStripMenuItem.Click
Form3.MdiParent = Me
Form3.Show()
End Sub
‘ Não escrever ‘Form4.MdiParent = Me’ , para o navegador abrir em outra janela.
Private Sub NavegadorWebToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NavegadorWebToolStripMenuItem.Click
Form4.Show()
End Sub
Private Sub ListarProdutosToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListarProdutosToolStripMenuItem.Click
Form5.MdiParent = Me
Form5.Show()
End Sub
Private Sub ListarFornecedoresToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListarFornecedoresToolStripMenuItem.Click
Form6.MdiParent = Me
Form6.Show()
End Sub
Private Sub ListarClientesToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListarClientesToolStripMenuItem.Click
Form7.MdiParent = Me
Form7.Show()
End Sub
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
Form1.MdiParent = Me
Form1.Show()
End Sub
Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click
Form2.MdiParent = Me
Form2.Show()
End Sub
Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click
Form3.MdiParent = Me
Form3.Show()
End Sub
Private Sub ToolStripButton4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton4.Click
Form5.MdiParent = Me
Form5.Show()
End Sub
Private Sub ToolStripButton5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton5.Click
Form6.MdiParent = Me
Form6.Show()
End Sub
Private Sub ToolStripButton6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton6.Click
Form7.MdiParent = Me
Form7.Show()
End Sub
Private Sub ToolStripButton7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton6.Click
Form4.Show()
End Sub
Private Sub SairToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SairToolStripMenuItem.Click
End
End Sub
Private Sub ToolStripButton8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton7.Click
End
End Sub
End Class
Observação:
Para que o Form8 – Menu – seja a tela principal, ou seja, tela para chamar as outras telas, devemos proceder da seguinte forma: Project >> NomedoProjeto Properties… (é a última opção) mudar em Startup Form para Form8.
Código do Class Produtos
‘Importando as bibliotecas
Imports System.Data
Imports System.Data.OleDb
Public Class Produtos
‘Variável de conexão
Dim strcon As String
‘Variáveis dos campos do Banco de Dados
Public ycodigo As Integer
Public yproduto As String
Public yvalor As Double
‘Criando um construtor de conexão.
Public Sub New()
strcon = “Provider=Microsoft.Jet.oleDb.4.0;Data Source=C:\banco\dumdum.mdb”
End Sub
‘Criando um construtor para preencher as variáveis com y.
Public Sub New(ByVal xcodigo As Integer, ByVal xproduto As String, ByVal xvalor As Double)
ycodigo = xcodigo
yproduto = xproduto
yvalor = xvalor
End Sub
‘Criando função para gravar no Banco de Dados.
Public Function gravar(ByVal xcodigo As Integer, ByVal xproduto As String, ByVal xvalor As Double) As Boolean
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “insert into Produtos(codigo,produtos,valor)values(@codigo,@produtos,@valor)”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@codigo”, OleDbType.Integer).Value = xcodigo
comando.Parameters.Add(“@produtos”, OleDbType.VarChar, 20).Value = xproduto
comando.Parameters.Add(“@valor”, OleDbType.Double).Value = xvalor
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Puxando os dados do Banco de Dados.
Public Function puxar(ByVal kregis As Produtos)
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim dr As OleDbDataReader
Dim sql As String = “select * from produtos where codigo = @codigo”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@codigo”, OleDbType.Integer).Value = kregis.ycodigo
conn.Open()
dr = comando.ExecuteReader
‘ Limpando as variáveis.
kregis.ycodigo = 0
kregis.yproduto = “”
kregis.yvalor = 0
Do While dr.Read
kregis.yproduto = dr.Item(“produtos”)
kregis.yvalor = dr.Item(“valor”)
Exit Do
Loop
End Function
‘Alterando os dados do Banco de Dados
Public Function alterar(ByVal xcodigo As Integer, ByVal xproduto As String, ByVal xvalor As Double)
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “update Produtos set produtos=@produtos,valor=@valor where codigo=” & xcodigo
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@produtos”, OleDbType.VarChar, 20).Value = xproduto
comando.Parameters.Add(“@valor”, OleDbType.Double).Value = xvalor
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Excluindo os dados do Bando de Dados
Public Function excluir(ByVal xcodp As Integer) As Boolean
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “delete from Produtos where codigo=@codigo”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@codigo”, OleDbType.Integer).Value = xcodp
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Grade
Public Function grade(ByVal xnomep As String) As DataTable
Dim tab As New DataTable
Dim conn As New OleDbConnection(strcon)
Dim sql As String = “select * from Produtos where produtos like @produtos order by produtos”
Dim adaptador As New OleDbDataAdapter(sql, conn)
adaptador.SelectCommand.Parameters.Add(“@produtos”, OleDbType.VarChar, 20).Value = xnomep & “%”
conn.Open()
adaptador.Fill(tab)
Return tab
End Function
End Class
Código do Class Fornecedor
‘Importando as bibliotecas
Imports System.Data
Imports System.Data.OleDb
Public Class Fornecedor
‘Variável de conexão
Dim strcon As String
‘Variáveis dos campos do Banco de Dados
Public yregistro As Integer
Public yfornecedor As String
Public yendereco As String
‘criando um construtor de conexão
Public Sub New()
strcon = “Provider=Microsoft.Jet.oleDb.4.0;Data Source=C:\banco\dumdum.mdb”
End Sub
‘Criando um construtor para preencher as variáveis com y
Public Sub New(ByVal xregistro As Integer, ByVal xfornecedor As String, ByVal xendereco As String)
yregistro = xregistro
yfornecedor = xfornecedor
yendereco = xendereco
End Sub
‘Criando função para gravar no Banco de Dados
Public Function gravar(ByVal xregistro As Integer, ByVal xfornecedor As String, ByVal xendereco As String) As Boolean
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “insert into Fornecedor(registro,fornecedor,endereco)values(@registro,@fornecedor,@endereco)”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@registro”, OleDbType.Integer).Value = xregistro
comando.Parameters.Add(“@fornecedor”, OleDbType.VarChar, 30).Value = xfornecedor
comando.Parameters.Add(“@endereco”, OleDbType.VarChar, 30).Value = xendereco
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Puxando os dados do Banco de Dados
Public Function puxar(ByVal wregis As Fornecedor)
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim dr As OleDbDataReader
Dim sql As String = “select * from fornecedor where registro=@registro”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@registro”, OleDbType.Integer).Value = wregis.yregistro
conn.Open()
dr = comando.ExecuteReader
‘ Limpando as variáveis
wregis.yregistro = 0
wregis.yfornecedor = “”
wregis.yendereco = “”
Do While dr.Read
wregis.yfornecedor = dr.Item(“fornecedor”)
wregis.yendereco = dr.Item(“endereco”)
Exit Do
Loop
End Function
‘Alterando os dados do Banco de Dados
Public Function alterar(ByVal xregistro As Integer, ByVal xfornecedor As String, ByVal xendereco As String)
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “update Fornecedor set fornecedor=@fornecedor,endereco=@endereco where registro=” & xregistro
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@fornecedor”, OleDbType.VarChar, 30).Value = xfornecedor
comando.Parameters.Add(“@endereco”, OleDbType.VarChar, 30).Value = xendereco
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Excluindo os dados do Bando de Dados
Public Function excluir(ByVal xcodf As Integer) As Boolean
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “delete from Fornecedor where registro=@registro”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@registro”, OleDbType.Integer).Value = xcodf
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Grade
Public Function grade(ByVal xnomef As String) As DataTable
Dim tab As New DataTable
Dim conn As New OleDbConnection(strcon)
Dim sql As String = “select * from fornecedor where fornecedor like @fornecedor order by fornecedor”
Dim adaptador As New OleDbDataAdapter(sql, conn)
adaptador.SelectCommand.Parameters.Add(“@fornecedor”, OleDbType.VarChar, 30).Value = xnomef & “%”
conn.Open()
adaptador.Fill(tab)
Return tab
End Function
End Class
Código do Class Clientes
‘Importando as bibliotecas
Imports System.Data
Imports System.Data.OleDb
Public Class Clientes
‘Variável de conexão
Dim strcon As String
‘Variáveis dos campos do Banco de Dados
Public ymatricula As Integer
Public ycomprador As String
Public ybairro As String
‘Criando um construtor de conexão
Public Sub New()
strcon = “Provider=Microsoft.Jet.oleDb.4.0;Data Source=C:\banco\dumdum.mdb”
End Sub
‘Criando um construtor para preencher as variáveis com y
Public Sub New(ByVal xmatricula As Integer, ByVal xcomprador As String, ByVal xbairro As String)
ymatricula = xmatricula
ycomprador = xcomprador
ybairro = xbairro
End Sub
‘Criando função para gravar no Banco de Dados
Public Function gravar(ByVal xmatricula As Integer, ByVal xcomprador As String, ByVal xbairro As String) As Boolean
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “insert into Clientes(matricula,comprador,bairro)values(@matricula,@comprador,@bairro)”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@matricula”, OleDbType.Integer).Value = xmatricula
comando.Parameters.Add(“@comprador”, OleDbType.VarChar, 50).Value = xcomprador
comando.Parameters.Add(“@bairro”, OleDbType.VarChar, 20).Value = xbairro
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Puxando os dados do Banco de Dados
Public Function puxar(ByVal zregis As Clientes)
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim dr As OleDbDataReader
Dim sql As String = “select * from Clientes where matricula = @matricula”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@matricula”, OleDbType.Integer).Value = zregis.ymatricula
conn.Open()
dr = comando.ExecuteReader
‘ Limpando as variáveis
zregis.ymatricula = 0
zregis.ycomprador = “”
zregis.ybairro = “”
Do While dr.Read
zregis.ycomprador = dr.Item(“comprador”)
zregis.ybairro = dr.Item(“bairro”)
Exit Do
Loop
End Function
‘Alterando os dados do Banco de Dados
Public Function alterar(ByVal xmatricula As Integer, ByVal xcomprador As String, ByVal xbairro As String)
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “update Clientes set comprador=@comprador,bairro=@bairro where matricula=” & xmatricula
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@comprador”, OleDbType.VarChar, 50).Value = xcomprador
comando.Parameters.Add(“@bairro”, OleDbType.VarChar, 20).Value = xbairro
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Excluindo os dados do Bando de Dados
Public Function excluir(ByVal xcodc As Integer) As Boolean
Dim gravou As Boolean
Dim conn As New OleDbConnection(strcon)
Dim comando As New OleDbCommand
Dim sql As String = “delete from Clientes where matricula=@matricula”
comando = New OleDbCommand(sql, conn)
comando.Parameters.Add(“@matricula”, OleDbType.Integer).Value = xcodc
conn.Open()
gravou = comando.ExecuteNonQuery
End Function
‘Grade
Public Function grade(ByVal xnomec As String) As DataTable
Dim tab As New DataTable
Dim conn As New OleDbConnection(strcon)
Dim sql As String = “select * from Clientes where comprador like @comprador order by comprador”
Dim adaptador As New OleDbDataAdapter(sql, conn)
adaptador.SelectCommand.Parameters.Add(“@comprador”, OleDbType.VarChar, 50).Value = xnomec & “%”
conn.Open()
adaptador.Fill(tab)
Return tab
End Function
End Class
redneerpmocaraprizuder