Как убрать скролы на DBGid?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Как убрать скролы на DBGid?

Сообщение Tango » 14.06.2013 11:49:19

Как убрать скролы на DBGid?
Если я делаю так



Код: Выделить всё
procedure TNoScrollBarDBGrid.Paint;
Begin
inherited;

TNoScrollBarDBGrid=class(TDCLDBGrid)protected
  procedure Paint; override;
End;

procedure TNoScrollBarDBGrid.Paint;
Begin
  SetScrollRange(Handle, SB_VERT, 0, 0, False);
  SetScrollRange(Handle, SB_HORZ, 0, 0, False);
inherited;
End;


То убираются, но со следующим косяком.

На Форме два ДБГрида, Один нормальный (верхний),другой (нижний) таблица подсуммировки, без скролов.
Но в нижнем гриде рисуется строчка от верхнего и она похожа на мусор.

Изображение


Целевое приложение : Win32
Lazarus 1.0.10
fpc 2.6.2
Win 7 x64
Последний раз редактировалось Tango 17.06.2013 15:41:37, всего редактировалось 1 раз.
Аватара пользователя
Tango
постоялец
 
Сообщения: 162
Зарегистрирован: 31.05.2012 17:07:30

Re: Как убрать скролы на DBGid?

Сообщение alexs » 14.06.2013 18:07:46

Возьми RxDBGrid и не мучайся.
Он и сумировать итог умеет, и строка с итогами отображается. И фильтровать в гриде будешь.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4064
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Как убрать скролы на DBGid?

Сообщение Little_Roo » 14.06.2013 20:48:09

Послушай гуру alexs :D
Он таки прав !!!
Сам пользуюсь его гридом.... дай б...кто-нибудь господину-гуру Лагунову здоровья и еще сил насиловать свой мозг...на благо всем нам... enter... :D
Аватара пользователя
Little_Roo
энтузиаст
 
Сообщения: 639
Зарегистрирован: 27.02.2009 19:56:36
Откуда: Санкт-Петербург

Re: Как убрать скролы на DBGid?

Сообщение alexs » 14.06.2013 23:19:43

:lol: :lol: :lol: :lol: пацталом.... :lol: :lol: :lol: :lol: :lol:
Для поправки здоровья и для восстановления сил любить свой мозг - на стартовой странице своего сайта разместил номер яндекс-кошелька. Буду благодарен за любую благодарность...
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4064
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Как убрать скролы на DBGid?

Сообщение Tango » 17.06.2013 15:40:54

Как всегда, отвечу сам.
Спасибо за ваше бездействие.

Процедуру сделал так.

Код: Выделить всё
procedure TNoScrollBarDBGrid.Paint;
Begin
{$IFDEF MSWINDOWS}
  SetScrollRange(Handle, SB_VERT, 0, 0, True);
  SetScrollRange(Handle, SB_HORZ, 0, 0, True);
  {$IFDEF FPC}
  Canvas.Clear;
  Canvas.Brush.Color := clWindow;
  Canvas.FillRect(Canvas.ClipRect);
  {$ENDIF}
{$ENDIF}
inherited;
End;


И всё стало красиво.
Аватара пользователя
Tango
постоялец
 
Сообщения: 162
Зарегистрирован: 31.05.2012 17:07:30


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 217

Рейтинг@Mail.ru