Este texto é uma continuação do Banco de dados: Mostrando Registros.
Continuando nosso aprendizado anterior, vamos visualizar os dados da tabela criada na janela JDialogQuery em uma outra janela e permitir que o usuário altere os dados do registro.
Abra a janela JDialogQuery e adicione um botão com o Title View.
Efetue duplo clique no evento OnClick do botao View e adicione as seguintes funções:
verificarValor com os parâmetros:
jTableProduct
SelectedRow
>
0
There is no record!
abrirJanela com os parâmetros:
JDialogAlter
"+jTableProduct.getSelectedValue("id")+"
fecharJanela sem parâmetros.
Na primeira função, nós verificamos se há registros na jTableProduct. Caso não, exibe a mensagem "There is no record!" e para o processo do evento. Na segunda, abrimos a janela JDialogAlter (que vamos criar agora), passando por parâmetro o id do registro selecionado na tabela. Na terceira, fechamos a janela JDialogQuery.
Crie uma janela, clicando com o botão direito do mouse no Explorador de Janelas e selecionando a opção Nova, com o nome de JDialogAlter e mude seu Title para Alter e Window para Dialog (Inspetor de Objetos). Adicione dois Labels, com os Text Description e Price, dois TextFields, com os nomes de jTextFieldDescription e jTextFieldPrice, e um Button com o Text Alter. Mude o HorizontalTextAlignment do jTextFieldPrice para RIGHT e a Mask para Decimal.
Efetue duplo clique no evento OnShow da janela e adicione a função selecionarRegistro com os parâmetros:
product
description, price
where id="+getReturn()+"
Esta função irá selecionar o registro da tabela product com o id igual ao valor passado por parâmetro, quando abrimos a janela JDialogAlter pela janela JDialogQuery.
Mude a propriedade Column dos jTextFieldDescription e jTextFieldPrice para description e price. Isso fará com que, quando a função selecionarRegistro for executada, os jTextFields recebam os valores da consulta.
Selecione o botão Alter e efetue dois cliques no evento OnClick, no Inspetor de Objetos.
Adicione a função alterarRegistro com os seguintes parâmetros:
product
description='"+jTextFieldDescription.getText()+"', price='"+jTextFieldPrice.getText()+"'
where id="+getReturn()+"
Adicione também uma função fecharJanela, sem parâmetro algum.
Salve e Execute sua aplicação, clicando nos respectivos botões na Barra de ferramentas ou teclando CTRL + S e F9.