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 > > >