скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как удалить вертикальную полосу прокрутки (скроллбар) из DBGrid



Создал Бог мyжчинy и отпyстил на землю.. Чеpез какое-то вpемя мужчина пpиходит и говоpит:
- Хочy тp@хаться ночью - и создал Бог емy женy.
Чеpез какое-то вpемя мужчина пpиходит и говоpит:
- Хочy тp@хаться днем - и создал Бог емy любовницy.
Чеpез какое-то вpемя мужчина пpиходит и говоpит:
- Хочy, - говоpит, - тp@хаться и днем и ночью - и создал Бог Windows.

Для этого необходимо переопределить метод Paint. Внутри метода Paint Вы должны вызвать API процедуру SetScrollRange для установки минимального и максимального значений скроллирования в ноль (тем самым запретив скроллбар), а затем вызвать inherited. Следующий код, это unit содержащий новый компонент под названием TNoScrollBarDBGrid, который делает это.


type
  TNoScrollBarDBGrid = class(TDBGrid)
  protected
    procedure Paint; override;
end;

procedure register;

implementation

procedure register;
begin
  RegisterComponents('Samples', [TNoScrollBarDBGrid]);
end;

{ TNoScrollBarDBGrid }

procedure TNoScrollBarDBGrid.Paint;
begin
  SetScrollRange(Handle, SB_VERT, 0, 0, false);
  inherited;
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook