Как зафиксировать один или несколько столбцов в TDBGrid с возможностью навигации по этим столбцам?
Материал из DRKB
Как зафиксировать один или несколько столбцов в TDBGrid с возможностью навигации по этим столбцам?[править | править код]
procedure TDbGridEx.ColEnter;
procedure ProcessColEnter;
begin
if (SelectedIndex <> _Mark) then
begin
ColumnMoved(Columns.Count, StaticCol + 1);
SelectedField := Fields[StaticCol];
end;
Exit;
if (SelectedIndex > StaticCol) then
begin
if _LastSelectedIndex = StaticCol then
begin
if _Mark = Columns[SelectedIndex].Title.Caption then
begin
ColumnMoved(StaticCol + 1, Columns.Count);
SelectedField := Fields[Columns.Count - 1];
end
else
begin
ColumnMoved(StaticCol + 1, Columns.Count);
SelectedField := Fields[StaticCol];
end;
end;
end;
end;
begin
if (_EntryCol > 0) or _MouseDown or (StaticCol = 0) then
begin
_MouseDown := FALSE;
end
else
begin
inc(_EntryCol);
ProcessColEnter();
dec(_EntryCol);
end;
if Assigned(OnColEnter) then OnColEnter(Self);
_LastSelectedIndex := SelectedIndex;
end;
(2:5085/33.11)
Author: Ramil Galiev
Author: StayAtHome
Source: Взято с Vingrad.ru http://forum.vingrad.ru
ID: 03032