Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 189 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

OLá,

   Estive tentando adaptar um procedimento de Delphi para que pudesse ativar o Hint nas colunas

   do DBGrid do Lazarus 2.0.8  . 

    Já tentei até uma classe que encontrei na Web :   

   AppShowHint(var HintStr: String;  var CanShow: Boolean; var HintInfo: THintInfo);  

   mas nao obtive êxito. 

   Alguem poderia por favor me ajudar num dica mais certeira.

 

  • 3 anos depois...
  • Solution
Postado

Caso interesse á alguem fiz para funcionar no lazarus

procedure TFormOrcamento.DBGridDadosMouseMove(Sender: TObject; Shift: TShiftState; X, Y: integer);
var
  C, L, auxID: integer;
  auxB: TBookMark;
begin
  //Pega a Coluna e a Linha pela posição X, Y
  (Sender as TDBGrid).MouseToCell(X, Y, C, L);

  if(L < 1)then Exit;

  try
    //Marca a posição do dataset
    auxB := DataSourceDados.DataSet.GetBookmark;

    //Desabilita controles para não ficar oscilando
    DataSourceDados.DataSet.DisableControls;

    //Vai para a linha desejada
    DataSourceDados.DataSet.RecNo := L;

    //Pega a informação
    auxID := DataSourceDados.DataSet.FieldByName('ID').AsInteger;

    //Adiciona a informação ao Hint
    (Sender as TDBGrid).Hint := 'ID: ' + IntToStr(auxID);

    //Mostra o Hint
    Application.ActivateHint(Mouse.CursorPos);
  finally
    //Volta para a posição inicial
    DataSourceDados.DataSet.GotoBookmark(auxB);

    //Limpa a marcação
    DataSourceDados.DataSet.FreeBookmark(auxB);

    //Reabilida controles
    DataSourceDados.DataSet.EnableControls;
  end;
end;  

  • Curtir 1
  • Este tópico foi criado há 189 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.