Fórum travando linha grid enquanto edita #287177

06/07/2005

0

quero editar dados na grid + mas quero impedir que ele mude de linha quando teclar ou mesmo via mouse.

atualmente abro uma janelinha apenas com os campos a digitar. + se for direto na grid fica bem mais prático e bonito


valeu


Jonnymarques

Jonnymarques

Responder

Posts

06/07/2005

Araujojunior

quero editar dados na grid + mas quero impedir que ele mude de linha quando teclar ou mesmo via mouse. atualmente abro uma janelinha apenas com os campos a digitar. + se for direto na grid fica bem mais prático e bonito valeu

Verifica se está readonly := False (Grid) e AutoEdit :=True (DataSource)


Responder

Gostei + 0

06/07/2005

Jairroberto

Olá, Jonny!

Você não foi muito claro, mas se o que você está querendo é obrigar o usuário a apertar um botão para confirmar uma alteração no DBGrid, impedindo que ele use as setas para cima e para baixo ou o mouse para fazer isso basta o seguinte:

1. Crie uma variável privada do tipo Boolean no formulário;
2. Impeça que o usuário dê Post na tabela vinculada ao DBGrid se a variável criada for ´False´;
3. Mude o valor da variável para ´True´ e dê Post na tabela no evento OnClick do botão.


TForm1 = class(TForm)
...
  procedure Table1BeforePost(DataSet: TDataSet);
  procedure TForm1.btnConfirmarClick(Sender: TObject);
private
  ClicouConfirmar: Boolean;
...
end;

procedure TForm1.Table1BeforePost(DataSet: TDataSet);
begin
  if not ClicouConfirmar then
    SysUtils.Abort;
end;

procedure TForm1.btnConfirmarClick(Sender: TObject);
begin
  ClicouConfirmar := True;
  try
    Table1.Post;
  finally
    ClicouConfirmar := False;
  end;
end;


Um abraço,
Jair


Responder

Gostei + 0

06/07/2005

Araujojunior

Desculpe amigo, interpretei sua pergunta de forma errada.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar