Olá Adriano,
Eu tentei fazer o que você falou mas não deu muito certo.
Uma coisa que eu esqueci de falar, eu vo adicionando itens no form, ou
seja, quando eu abro o form não tem nada na tabela (dbgrid), ai eu vo
adicionando, e eu queria que a cada linha tivesse um botão.
Do jeito que você falou o botão ficou fora da tabela (?), e também só
criou 1 botão, e não 1 botão para cada linha!
Obrigado!


--- Em delphi-br@yahoogrupos.com.br, "Adriano Santos (Yahoo)"
<[EMAIL PROTECTED]> escreveu
>
> Fiz um negócio basicão aqui só pra vc entender ok?
> 
> 1. Crie uma variável BtnDelete do tipo TButton no plublic do formulário.
> 2. Crie um campo calculado no Fields Editor com um nome qualquer, usei 
> Temporario. Adicione esse campo ao DBGrid.
> 3. No evento DrawColumnCell do DBGrid adicione;
> procedure TForm3.DBGrid1DrawColumnCell(Sender: TObject; const Rect:
TRect;
>   DataCol: Integer; Column: TColumn; State: TGridDrawState);
> begin
>   if (gdFocused in State) then
>   begin
>     if (Column.Field.FieldName = 'Temporario') then
>     with BtnDeletar do
>     begin
>       Left := Rect.Left + DBGrid1.Left + 1;
>       Top := Rect.Top + DBGrid1.Top + 1;
>       Width := Rect.Right - Rect.Left + 2;
>       Width := Rect.Right - Rect.Left + 2;
>       Height := Rect.Bottom - Rect.Top + 2;
>       Caption := 'Del';
>       BtnDeletar.OnClick := Clique;
>       Visible := True;
>     end;
>   end
> end;
> 
> 4. Crie e destrua o componente BtnDelete no OnCreate e OnDestroy do 
> formulário;
> procedure TForm3.FormCreate(Sender: TObject);
> begin
>   BtnDeletar := TButton.Create(Self);
>   BtnDeletar.Parent := Form3;
> 
>    DBCheckBox1.Visible := False;
> end;
> 
> procedure TForm3.FormDestroy(Sender: TObject);
> begin
>   BtnDeletar.Free;
> end;
> 
> 5. Crie uma procedure com a mesma assinatura de um evento de botão e 
> coloque seu código nela. Assim:
> 
> procedure TForm3.Clique(Sender: TObject);
> begin
>   if MessageDlg('Excluir registro?', mtConfirmation, [mbYes, mbNo],
0) = 
> mrYes then
>     Table1.Delete;
> end;
> 
> 
> Pronto. Note que na linha:
> BtnDeletar.OnClick := Clique;
> 
> Estou atribuindo a procudure criada ao evento OnClick do Botão.
> []s
> 
> Adriano Santos
> -------------------------------------------------------------
> Editor Técnico Revista ClubeDelphi
> www.delphitodelphi.blogspot.com
> www.devmedia.com.br
> www.devmedia.com.br/clubedelphi/pagina.asp
> 
> 
> 
> 
> caionmoreno respondeu:
> >
> > Existe como eu inserir um botão em um dbgrid??
> > Eu tava querendo assim, tem um dbgrid que mostra a tabela, e para cada
> > item deveria ter um botão, aí quando a pessoa clicar no botão
> > excluiria aquele item.
> > Tem como eu fazer isso?
> >
> > 
> >
------------------------------------------------------------------------
> >
> > No virus found in this incoming message.
> > Checked by AVG Free Edition. 
> > Version: 7.5.516 / Virus Database: 269.19.6/1230 - Release Date:
17/01/2008 16:59
> >
>


Responder a