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

Вниз

ПРОСТО ! Быстрый, тупой, вопрос !   Найти похожие ветки 

 
IronHawk ©   (2002-02-12 15:37) [0]

Как в ListBox убрать вертикальные скролы ???


 
Johnmen ©   (2002-02-12 16:42) [1]

Если подождешь до завтра, то отвечу, раз никто не хочет.


 
IronHawk ©   (2002-02-12 17:59) [2]

НУ подожду !
ВСЁРАВНО ЗНАТЬ НАДО !
Буду ждать !


 
Cobalt ©   (2002-02-12 18:06) [3]

Попробуй посмотреть свойства ( все )


 
IronHawk ©   (2002-02-12 18:28) [4]

НЕКАТИТ !


 
Dimk   (2002-02-13 02:15) [5]

Это процедура которая готовит разные параметры перед созданием
собственно окна листбокса. К сожалению ( я выделил см ниже) в стиль всегда добавляются WS_HSCROLL or WS_VSCROLL. Из за этого то всегда есть скроллбары. Можно конечно создать свой компонент
который будет отличаться от оригинального всего одним свойством которое позволит включать или не включать скроллбары- то есть
if ВключатьСкроллбары then Style := Style or WS_HSCROLL or WS_VSCROLL; И вся вселенная у твоих ног!

procedure TCustomListBox.CreateParams(var Params: TCreateParams);
type
PSelects = ^TSelects;
TSelects = array[Boolean] of DWORD;
const
Styles: array[TListBoxStyle] of DWORD =
(0, LBS_OWNERDRAWFIXED, LBS_OWNERDRAWVARIABLE, LBS_OWNERDRAWFIXED,
LBS_OWNERDRAWFIXED);
Sorteds: array[Boolean] of DWORD = (0, LBS_SORT);
MultiSelects: array[Boolean] of DWORD = (0, LBS_MULTIPLESEL);
ExtendSelects: array[Boolean] of DWORD = (0, LBS_EXTENDEDSEL);
IntegralHeights: array[Boolean] of DWORD = (LBS_NOINTEGRALHEIGHT, 0);
MultiColumns: array[Boolean] of DWORD = (0, LBS_MULTICOLUMN);
TabStops: array[Boolean] of DWORD = (0, LBS_USETABSTOPS);
CSHREDRAW: array[Boolean] of DWORD = (CS_HREDRAW, 0);
Data: array[Boolean] of DWORD = (LBS_HASSTRINGS, LBS_NODATA);
var
Selects: PSelects;
begin
inherited CreateParams(Params);
CreateSubClass(Params, "LISTBOX");
with Params do
begin
Selects := @MultiSelects;
if FExtendedSelect then Selects := @ExtendSelects;
Style := Style or ( WS_HSCROLL or WS_VSCROLL or
Data[Self.Style in [lbVirtual, lbVirtualOwnerDraw]] or
LBS_NOTIFY) or Styles[FStyle] or Sorteds[FSorted] or
Selects^[FMultiSelect] or IntegralHeights[FIntegralHeight] or
MultiColumns[FColumns <> 0] or BorderStyles[FBorderStyle] or
TabStops[FTabWidth <> 0];
if NewStyleControls and Ctl3D and (FBorderStyle = bsSingle) then
begin
Style := Style and not WS_BORDER;
ExStyle := ExStyle or WS_EX_CLIENTEDGE;
end;
WindowClass.style := WindowClass.style and not (CSHREDRAW[UseRightToLeftAlignment] or CS_VREDRAW);
end;
end;


 
Alx2 ©   (2002-02-13 08:11) [6]

>IronHawk © (12.02.02 15:37)
>Как в ListBox убрать вертикальные скролы ???

ShowScrollBar(ListBox1.Handle,sb_both,false);


 
IronHawk ©   (2002-02-13 10:44) [7]

... СПАСИБО ВСЕМ !
>>> Alx2 ©
Вот это само оно !


Есть ещё вопрос !
У меня на форме 20-ть ListBox-ов
Как мне одной строкой (без обьявления это го свойства каждому)
обьеденить их, и присвоить им это свойство ???

... заранее благодарен !


 
Alx2 ©   (2002-02-13 11:06) [8]


procedure TForm1.Button1Click(Sender: TObject);
Var k : integer;
begin
for k := 0 to ComponentCount-1 do
if Components[k] is TListBox then
with Components[k] as TListBox do
ShowScrollBar(Handle,sb_both,false);
end;




 
IronHawk ©   (2002-02-13 12:41) [9]

>>> Alx2 ©
СПАСИБО !!!! ОГРОМНОЕ !


 
IronHawk ©   (2002-02-14 12:33) [10]

>>> Alx2 ©

НАШЕЛСЯ ТРАБЛ !

> procedure TForm1.Button1Click(Sender: TObject);
> Var k : integer;
> begin
> for k := 0 to ComponentCount-1 do
> if Components[k] is TListBox then
> with Components[k] as TListBox do
> ShowScrollBar(Handle,sb_both,false);
> end;


При обновлении или смене Item-а
СКРОЛЫ опять появляються !!!
как их убить с концами ???



 
Alx2 ©   (2002-02-14 12:50) [11]

Посмотри SetWindowLong. Копать там, кажется, надо.


 
MBo ©   (2002-02-14 13:49) [12]

type tLboxnoscroll=class(tcustomlistbox)
procedure CreateParams(var Params: TCreateParams);override;
end;
procedure tLboxnoscroll.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.Style := params.Style and (not WS_VSCROLL)
end;
или, как Alx2 сказал, через SetWindowLong


 
IronHawk ©   (2002-02-14 17:30) [13]

>>> Alx2 ©

Спасибо !

>>> MBo ©

Тоже вариат токо он чёт глюкавит,
узнаю почему скажу !



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

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

Наверх




Память: 0.49 MB
Время: 0.018 c
1-9149
Squall
2002-02-17 22:56
2002.03.04
Скорость Progress Bar a!!!


1-9181
Johnmen
2002-02-14 12:20
2002.03.04
Кто плотно общался с DBGridEh ?


1-9195
IronHawk
2002-02-12 15:37
2002.03.04
ПРОСТО ! Быстрый, тупой, вопрос !


1-9205
Stormick
2002-02-13 23:19
2002.03.04
Помогите плиззз


7-9315
SWW
2001-11-27 10:59
2002.03.04
Как определить количество полученной/переданной информации на сетевом адапторе?