Brak powrotu do pierwszej kolumny w DBGrid

0

(w Newbie nie pomogli to może tutaj ktoś będzie znał odpowiedź)
Witam,
mam (wydaje się) banalne pytanie, ale nie potrafię tego zrobić.

W DBGrid w opcjach mam zaznaczone : ROWSELECT,ALWAYSSHOWSELECTION aby mi zaznaczał cały rekord w wszystkich kolumnach.
Gdy przewinę DBGrid używając Scrollbar do ostaniej kolumny i kliknę w dany rekord, DBGRID zostaje przewinięty do pierwszej kolumny...

Może, ktoś się już natknął na ten problem?
Proszę o pomoc.

0

A nie wystarczy Ci użycie tylko opcji "dgMultiSelect" ?
To przeskakiwanie wydaje mi się ze jest spowodowane tym że wszystkie kolumny Grida nie są widoczne na formie,
spróbuj zwiększyć rozmiar formy, albo ustawić szerokość kolumn w gridzie

0

@szaduj Tak,nie mieści się.
No chyba będę musiał tak zrobić.Dzięki

0

@szaduj
Ale jak tak zrobię to jak pokolorować cały wiersz a nie tylko jedną komórkę zaznaczoną.

TO jest kod, który zaznaczał cały wiersz przy opcjach ROWSELECT,ALWAYSSHOWSELECTION;

 
procedure Tslownik_podczas_pracy.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
with(Sender as TDBGrid) do
begin
  if (gdSelected in State) then
  Canvas.Brush.Color:=clnavy

  Canvas.FillRect(Rect);
   DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
1

A spróbuj tak:

dgRowSelect = TRUE
dgAlwaysShowSelection = False
dgMultiSelect = TRUE

To wszystko w opcjach TDBGrid ustaw , a kod zakomentuj tak żeby się nie wykonywał i zobacz :)

dodanie znacznika <code class="delphi"> - furious programming

1 użytkowników online, w tym zalogowanych: 0, gości: 1