Desenvolvendo uma agenda telefônica simples no Kylix

Nesse artigo mostrarei o quanto é simples trabalhar com o Kylix e MySQL. Nossa agenda será simples, guardará apenas nome e número de telefone, porém com a base que vou passar, com um pouco mais de trabalho você poderá programar coisas muito mais complexas.

[ Hits: 44.559 ]

Por: AValle em 14/07/2003


Editando os registros



Vamos precisa de mais um TForm. Clique no botão NewForm, selecione o novo form e no OI edite as seguintes opções:
Caption - Editar
Height - 160
Name - fEdita
Width - 185

Clique em Save, e salve como uEdita.pas

Agora, vamos ganhar tempo: Selecione no fPrincipal o objeto GroupBox1, e dê um CTRL C para copiar. Logo em seguida selecione o fEdita, e dê um CTRL V. Observer abaixo como ficou:



Modifique esses dados no OI para o fEditar / GroupBox1:
Caption - Editar
Modifique esses dados no OI para o fEditar / butIns:
Caption - Editar

Para chamar esse form, clique duas vezes no componente Popup1 so fPrincipal, clique duas vezes na palavra Editar.
No código, coloque assim:

procedure TfPrincipal.Editar1Click(Sender: TObject);
begin
     fEdita.ShowModal;
end;

Precisamos preencher esses edits do fEdita com os valores selecionados no fPrincipal. Faremos o seguinte:

No mesmo evento acima, vamos já preencher esses dados. Observe o código abaixo:

procedure TfPrincipal.Editar1Click(Sender: TObject);
begin
    //preenche os edits
    fEdita.edtNome.Text:= gridver.Cells[0,gridver.Row];
    fEdita.edtTel.Text:= gridver.Cells[1,gridver.Row];
    fEdita.ShowModal;
end;

E no fEdita precisamos guardar o número antigo do telefone para poder fazer o update no mysql. Criarei uma variável global. Observe:

var
  fEdita: TfEdita;
  deletar: string; //telefone antigo
    
    implementation
    
    {$R *.xfm}

Selecione o fEdita, vá no OI e em events clique duas vezes na opção onShow. Observe:

procedure TfEdita.FormShow(Sender: TObject);
begin
   deletar:= edtTel.Text;
end;

Dessa forma, assim que o form é aberto o valor do telefone selecionado é inserido na variável deletar, de forma global.

Editando


Clique duas vezes no botão Editar (butIns do fEditar): Digite o código:


procedure TfEdita.butInsClick(Sender: TObject);
begin
    //confirma se deseja editar ou não:
    if messagedlg('Deseja realmente editar o telefone ' + deletar,mtConfirmation,[mbYes,mbNo],0)=mrYes then
    begin
       fPrincipal.sql.SQL.Text:= 'update telefones set agenda_nome = ' + quotedstr(trim(edtNome.Text)) + ' , agenda_tel = ' + quotedstr(trim(edtTel.Text)) + ' where agenda_tel = ' + quotedstr(deletar);
       fPrincipal.sql.ExecSQL(True);
       self.Close;
       fPrincipal.verdados(1);
    end;
end;

E acabamos, compile e distribua para seus amigos :)

Como podem ter notado, criei a procedure verdados() com um parâmetro integer, deforma que fica mais fácil para inserir mais funções. Basta trocar o 1 por outro número qualquer e editar no fonte para executar o que você quiser de acordo com o número que foi escolhido.

Esse exemplo que criei te dará base para criar infinitas coisas mais complexas, use sua imaginação :)



Vida longa ao software livre.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Criando o banco de dados
   3. Agora vamos ao kylix :)
   4. Criando a interface gráfica
   5. Iniciando no código-fonte
   6. Criando a visualização
   7. Deletando os registros
   8. Editando os registros
   9. Downloads
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Criando uma aplicação Kylix com PostgreSQL usando Zeos (parte 1)

Criando uma aplicação Kylix com PostgreSQL usando Zeos (parte 3)

Criando uma aplicação Kylix com PostgreSQL usando Zeos (parte 2)

Colocando aplicação Kylix no TrayIcon do KDE

Cross-compile Lazarus: Gerando executáveis Win32 estando no Linux

  
Comentários
[1] Comentário enviado por tidus em 28/11/2004 - 21:08h

muito bom, gostei!

[2] Comentário enviado por removido em 12/06/2006 - 20:16h

Muito bom, bom trabalho!

[3] Comentário enviado por fernandoguedes em 16/06/2010 - 12:46h

Muito bom o artigo, será que seria possível a atualização desse tutorial?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts