Avatar billede bjarkekr Nybegynder
20. august 2007 - 11:25 Der er 2 kommentarer og
1 løsning

TStringGrid - scrollbar

Hejsa

Jeg har et stringgrid der opdatere sig selv med en timer en gang hvert 15. sekund. Nu er det så sådan at hvis der er scrollet et vist stykke ned i griddet, hopper scrollbaren til toppen når der opdateres. Hvordan undgår jeg det? Kan man evt. detecte hvor langt scrollbaren er nede inden opdateringen, og så sætte den til det samme sted igen efter opdateringen??
Avatar billede spil2vind Nybegynder
20. august 2007 - 12:50 #1
Procedure Opdatering;
var
  HuskRow : integer;
begin
    HuskRow := StringGrid1.Row;


    Udfør dine opdateringer

    StringGrid1.Row := HuskRow;

end;
Avatar billede bjarkekr Nybegynder
20. august 2007 - 16:53 #2
Den går ikke.. For der er ikke markeret en row når man bare bruger scrollbaren..


Men fandt ud af lidt.. Der virker ser det ud til:

var
  info: TScrollInfo;
  scrollAmount: integer;
begin

  FillChar(info, SizeOf(info), 0);
  with info do
  begin
    cbsize := SizeOf(info);
    fmask := SIF_ALL;
    GetScrollInfo(grdAnkomst.Handle, SB_VERT, info);
    fmask := fmask or SIF_PAGE;
    scrollAmount := info.nTrackPos;
  end;

  ...
  //timer kode...
  ...
  info.nTrackPos := scrollAmount;
  SetScrollInfo(grdAnkomst.Handle, SB_VERT, info, True);
end;
Avatar billede bjarkekr Nybegynder
21. august 2007 - 15:04 #3
nå.. jeg svarer mig selv..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester