quinta-feira, 17 de setembro de 2009

Removendo a barra de rolagem vertical do dbgrid

{Para remover a barra de rolagem vertical de componente TDBGrid, você precisa apenas criar um novo componente herdado da classe TDBGrid e reescrever o método paint. No método Paint você usará a API do Windows SetScrollRange definindo o tamanho máximo e mínimo do scroll para zero (isto desabilitará a exibição da barra de scroll).

E então acione o inherited paint para que o objeto novo possa ser desenhado.

O código abaixo mostra uma Unit criada de uma instância do componente TDBGrid e que não possui a barra de rolagem vertical.}

unit Newgrid;
interface
uses
WinTypes, WinProcs, Classes, DBGrids;

type
TNoVertScrollDBGrid = class(TDBGrid)

protected
procedure 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.

Nenhum comentário:

Postar um comentário