Показать сообщение отдельно
  #1  
Старый 14.10.2009, 17:02
madmech madmech вне форума
Прохожий
 
Регистрация: 30.04.2009
Сообщения: 18
Репутация: 10
По умолчанию Как отключить скроллбар у DBGrid

Доброго дня суток, дамы и господа! Суть проблемы такова: надо убрать скроллбары (опционально) у данного конкретного ДБГрида и я, в принципе, эту проблему решил, найдя решение на др. форуме:

Код:
Type TFake=class(TCustomGrid);    
  public
    property ScrollBars;
  end;        
implementation            
{$R *.dfm}            
procedure TForm1.Button1Click(Sender: TObject);            
begin            
TFake(DBGrid1).ScrollBars:=ssVertical;             
end;


Но, после того, как я реализовал это решение, возникли две проблемы:
1. Свойство ScrollBars работает так, как ему вздумается, т.е. установка его в ssVertical вовсе не означает, что останется только вертикальный скролл. Приходится исхитряться и выдумывать разные комбинации и последовательности переключения этого свойства с целью получения интересующего меня результата.
2. И самая главная проблема: приходится отключать скролл(-ы) каждый раз, когда происходит перерисовка грида, например, при обновлении данных по нажатию на определенную кнопку, а это уже чревато некрасивым мерцанием во время очередного отключения скролла.

Посему формулирую вопрос: можно ли как-нибудь отключить НУЖНЫЙ (-ЫЕ) мне скролл(-ы) для определенного ДБГрида один раз в начале запуска программы, чтобы в дальнейшем уже не заниматься его (их) отключением при каждой перерисовке грида?
Ответить с цитированием