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

Вниз

Как сделать, чтобы в ListBox не отображались линейки прокрутки   Найти похожие ветки 

 
dedelta   (2005-06-30 18:56) [0]

Как сделать, чтобы в ListBox не отображались линейки прокрутки


 
Просто Джо ©   (2005-06-30 19:25) [1]

Ну, честно говоря, кроме
 
ShowScrollBar(
   ListBox1.Handle,
   SB_BOTH,
   False
 );

ничего в голову не приходит. Эта функция убирает скролл-бары до следующего их обновления, затем они снова появятся. Попробуй повесить этот код на несколько событий TListBox"а - и выбери оптимальный. Криво, но что поделать. Или все-так и придется писать своего наследника от TListBox"a и переопределить поведение в нескольких методах.


 
begin...end ©   (2005-06-30 20:51) [2]

Перекрыть CreateParams, в котором сбросить стили WS_HSCROLL и WS_VSCROLL, и радоваться жизни.


 
dedelta   (2005-07-03 16:04) [3]

А поподробнее можно. Интересует, что значит перекрыть.


 
begin...end ©   (2005-07-03 19:51) [4]

> dedelta   (03.07.05 16:04) [3]

Создать потомка и заменить реализацию метода CreateParams своей.

type
 TMyListBox = class(TCustomListBox)
   protected
     procedure CreateParams(var Params: TCreateParams); override;
 end;

{ TMyListBox }

procedure TMyListBox.CreateParams(var Params: TCreateParams);
begin
 inherited;
 Params.Style := Params.Style and not (WS_HSCROLL or WS_VSCROLL)
end


После этого можно либо динамически создавать экземпляры этого класса, либо зарегистрировать этот компонент в палитре.

Пример с динамическим созданием, позволяющий увидеть, что полосы прокрутки не появляются:

procedure TForm1.FormCreate(Sender: TObject);
var
 I: Char;
begin
 with TMyListBox.Create(Self) do
 begin
   Parent := Self;
   for I := "A" to "Z" do
     Items.Add(StringOfChar(I, 50))
 end;
end.


 
dedelta ©   (2005-07-06 10:05) [5]

Спасибо. Всё ОК.



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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
14-1120065593
Хинт
2005-06-29 21:19
2005.07.25
Мобильный телефон


1-1120341294
Flood_control
2005-07-03 01:54
2005.07.25
ShellListView специальные ограничения


1-1120656537
denissoft
2005-07-06 17:28
2005.07.25
MQL4


4-1117424627
LEXX_55
2005-05-30 07:43
2005.07.25
Как удалить файл зная только его расширение


1-1120798275
Demidoff
2005-07-08 08:51
2005.07.25
Как правильно вести Log файл?