Vamos Agora criar a tela onde serão cadastrados e visualizados os dados da tabela do bando de dados. Para isso adicione no formulário principal do projeto os seguintes componentes:

 

PageControl da Paleta Win32;

DbGrid, DbNavigator e DbEdit da paleta Data Controls;

Label e PopupMenu da paleta Standart;

 

Modelos seguindo o exemplo da figura abaixo ou como preferir:

Imagem

Imagem

Para quem não conhece, foram criados duas paginas no componente PageControl (Contatos e Cadastro conforme acima). Para criar estas paginas, basta clicar com o botão da direita do mouse sobre o componente e selecionar “New Page”.

 

No evento OnShow do formulário adicione os script’s:

 

  DataContatos.DataSet := DataModule1.ADOTable1;

  DataContatos.DataSet.Open;

  PageControl1.TabIndex := 0;

 

E no evento OnClose:

 

  DataContatos.DataSet.Close;

 

Na propriedade PopupMenu do formulário principal selecione o componente PopupMenu.

 

Dê um duplo clique no componente PopupMenu e crie uma opção de menu para localizar o contato; Dê um duplo clique nesta opção e adicione o script:

 

var aLocalizar : String;

begin

  aLocalizar := '';

  if InputQuery('Localizar','Nome do Contato',aLocalizar) then

  begin

    if Length(aLocalizar) > 0 then

    begin

      if not DataContatos.DataSet.Locate('nome',aLocalizar,[loPartialKey]) then

      begin

        MessageDlg('Contato não localizado!', mtInformation, [mbOK], 0);

        Abort;

      end;

    end

  end;

 

Selecione nas propriedades DataSource dos componentes DbGrid, DbNavigator e DbEdit o compoentente DataSource.

 

No Componente DbGrid, mude a propriedade “ReadOnly” para true;

 

E no componente DbNavigator, na propriedade visiblebuttons, deixe como true apenas as opções: nbInsert, nbDelete, nbPost e nbCancel;

 

Salve todo o projeto e compile para ver o funcionamento.

Imagem

O principal objeto deste artigo é mostrar uma forma simples de trabalhar a conexão com o banco de dados SQL Server através dos componentes ADO. Outra forma simples de trabalhar seria com os componentes da paleta DbExpress, mas acredito este ser o melhor caminho.

 

Até a próxima!