Для удаления вертикальной полосы прокрутки из компонента TDBGrid, вам необходимо перекрыть метод Paint. Внутри метода Paint вам необходимо вызвать процедуру API SetScrollRange, чтобы установить минимальные и максимальные значения полосы прокрутки в ноль (это запретит вывод полосы прокрутки), после чего вызвать родительский метод Paint. Код, приведенный ниже - новый компонент, названный TNoVertScrollDBGrid, у которого отсутствует вертикальная полоса прокрутки. Вы можете скопировать этот код в файл с именем NEWGRID.PAS и добавить данный компонент в палитру компонентов.
unit Newgrid; interface uses WinTypes, WinProcs, Classes, DBGrids; type TNoVertScrollDBGrid = class(TDBGrid)protectedprocedure Paint; override;end; procedure Register; implementation procedure TNoVertScrollDBGrid.Paint; begin SetScrollRange(Self.Handle, SB_VERT, 0, 0, False);inherited Paint;end; procedure Register; begin RegisterComponents('Data Controls', [TNoVertScrollDBGrid]);end; end. |
[000629]