Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ListBox / 20 сообщений из 20, страница 1 из 1
26.12.2003, 12:21
    #32364289
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
люди извините за ламерский вопрос, но как свойство звучит в ListBox горизонтальной прокрутки если строки не помещаются.
Заранее всем спасибо
...
Рейтинг: 0 / 0
26.12.2003, 12:37
    #32364331
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
выставь свойство ScrollWidth превышающее ширину ListBox-а
...
Рейтинг: 0 / 0
26.12.2003, 12:43
    #32364349
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
непомогает или у меня руки кривые или что-то не так делаю
...
Рейтинг: 0 / 0
26.12.2003, 12:51
    #32364365
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
должно работать
у ListBox-a смотришь свойство Width
например 200
и ставишь у него свойство ScrollWidth=210
...
Рейтинг: 0 / 0
26.12.2003, 12:53
    #32364368
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
вот из Help-а выдержка
Specifies the width, in pixels, by which the list box can scroll horizontally.

property ScrollWidth: Integer;

Use ScrollWidth to get or set the logical width of the list box. When ScrollWidth is greater than the client width of the list box, the list box gets a horizontal scrollbar. When ScrollWidth is less than or equal to ClientWidth, the horizontal scrollbar disappears.
...
Рейтинг: 0 / 0
26.12.2003, 12:59
    #32364380
Sclif
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
Стандартных шняг для скрола там нету, могу посоветовать сделать нефиксированный размер и сплитером слева подпереть.

Ну или хинт рисовать, это будет выглядеть солиднее.

Ну или взять нестандартный компонент.
...
Рейтинг: 0 / 0
26.12.2003, 13:01
    #32364382
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
это в самом свойстве, там же только числовые типы должны быть
...
Рейтинг: 0 / 0
26.12.2003, 13:07
    #32364397
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
а 210- разве не числовой тип ????
...
Рейтинг: 0 / 0
26.12.2003, 13:10
    #32364401
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
если я невнятно объяснил уточняю
у TListBox есть ДВА свойства числовых Width и ScrollWidth
так вот для того чтобы у TListBox-а появился ScrollBar нужно чтобы
ScrollWidth > Width
...
Рейтинг: 0 / 0
26.12.2003, 13:21
    #32364420
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
нету у меня этого свойства я его невижу
...
Рейтинг: 0 / 0
26.12.2003, 13:23
    #32364426
Sclif
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
Код: plaintext
у TListBox есть ДВА свойства числовых Width и ScrollWidth 

В D5 по крайней мере этого нет.
...
Рейтинг: 0 / 0
26.12.2003, 13:24
    #32364427
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
Какая версия Delphi???
в Delphi6 -есть !!!
...
Рейтинг: 0 / 0
26.12.2003, 13:28
    #32364439
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
у меня Делфи 5
...
Рейтинг: 0 / 0
26.12.2003, 13:30
    #32364441
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
тогда для Delphi5
бросай на форму TScrollBox нужных размеров
а уже на него бросай TListBox c заведомо увеличенной шириной(чтобы влезли самые длинные строки) и все будет OK
...
Рейтинг: 0 / 0
26.12.2003, 13:31
    #32364445
X
X
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
x:=Canvas.TextWidth(ListBox1.Items[0]);
ListBox1.Perform(LB_SETHORIZONTALEXTENT, x, 0);
...
Рейтинг: 0 / 0
26.12.2003, 13:38
    #32364455
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
а поподробнее в каком событии это прописать
...
Рейтинг: 0 / 0
26.12.2003, 14:00
    #32364477
Sclif
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
Да, хорошо знать API. :)
...
Рейтинг: 0 / 0
26.12.2003, 14:06
    #32364490
LexusR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
если вы про то что предлагает X
то стандартном отображении (Style=lbStandard) нет событий на которое можно навешать этот обработчик и придется
- пробежать по списку ListBox
- найти строчку имеющую наибольшую длину x
- настроить Scroll под эту длину
это можно сделать при показе формы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
procedure TForm1.FormShow(Sender: TObject);
var
  i : integer;
  x : integer;
begin
  x :=  0 ;
  for i:= 0  to ListBox1.Items.Count- 1  do
    begin
     if ListBox1.Canvas.TextWidth(ListBox1.Items[i])>x then
       x := ListBox1.Canvas.TextWidth(ListBox1.Items[i]);
    end;
  ListBox1.Perform(LB_SETHORIZONTALEXTENT,x,  0 );
end;
...
Рейтинг: 0 / 0
26.12.2003, 14:07
    #32364493
Билли
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
авторДа, хорошо знать API
Скоро про них можно будет забыть.
...
Рейтинг: 0 / 0
26.12.2003, 15:54
    #32364696
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListBox
спасибо всем принявшим участие в моей проблеме
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ListBox / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]