Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.25;
Скачать: CL | DM;

Вниз

Вопрос по компоненту DBGrid   Найти похожие ветки 

 
Kelvin   (2004-01-27 19:15) [0]

Как избавиться от вертикальной полосы полосы прокрутки в DBGrid"e? Точнее как сделать, чтобы она появлялась по мере надобности (как в ListBox"e)? И еще один вопрос: как растянуть первое поле на всю область DBGrid?


 
sergvc   (2004-01-28 14:25) [1]

Удаление вертикальной полосы прокрутки у TDBGrid

Для удаления вертикальной полосы прокрутки из компонента TDBGrid, вам необходимо перекрыть метод Paint. Внутри метода Paint вам необходимо вызвать процедуру API SetScrollRange, чтобы установить минимальные и максимальные значения полосы прокрутки в ноль (
это запретит вывод полосы прокрутки), после чего вызвать родительский метод Paint. Код, приведенный ниже - новый компонент, названный TNoVertScrollDBGrid, у которого отсутствует вертикальная полоса прокрутки. Вы можете скопировать этот код в файл с именем
NEWGRID.PAS и добавить данный компонент в палитру компонентов.

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


 
Kelvin   (2004-01-29 18:24) [2]

Спасибо. Все работает, но только происходит мерцание при прорисовке. Можно ли как нибуть от этого избавиться?



Страницы: 1 вся ветка

Текущий архив: 2004.02.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.032 c
14-80250
Cosinus
2004-02-04 15:10
2004.02.25
Регулярные выражения и с чем их едят...


1-79842
Сережа
2004-02-09 18:32
2004.02.25
работа с рисунками


3-79587
Sava
2004-02-02 16:03
2004.02.25
Проблема со нятием флага not null на поле


1-79955
Alex
2004-02-13 19:02
2004.02.25
HELP!


1-79998
maya
2004-02-10 13:24
2004.02.25
Rave Report