Вниз
Скачать: CL | DM;

Компонент типа TComboBox   Найти похожие ветки 

 
Shnabs   (2005-03-01 20:28) [0]

Можно как-нибудь в ComboBox"е, в стиле csSimple, сделать горизонтальный скроллбар?


 
oslep   (2005-03-01 20:59) [1]

Строго говоря, можно. Для этого:

procedure TForm1.FormCreate(Sender: TObject);
var
 ListHandle        : HWnd;
begin
 ComboBox1.HandleNeeded;
 ListHandle := TComboBoxAccess(ComboBox1).ListHandle;
 ShowScrollBar(ListHandle, SB_HORZ, True);
end;

Однако обрабатывать реакцию на передвижение ползунка придется ручками, в новой оконной процедуре для ListHandle


 
Fenik   (2005-03-01 20:59) [2]

Возможно тебе поможет это:
http://delphibase.spb.ru/?action=viewfunc&topic=vclservice&id=10702


 
oslep   (2005-03-01 21:04) [3]

Да, чуть не забыл, для доступа к защищенным полям и методам ,необходимо, ест-нно, объявление, если вы не в курсе:

type
 TComboBoxAccess = class(TComboBox)
 end;


 
Shnabs   (2005-03-01 21:15) [4]

У меня есть кодик для Listbox"а, который создает горизонтальный скролл, если строка больше ширины объекта:

var i1, MaxWidth: integer;
begin
MaxWidth := 0;
 for i1 := 0 to ListBox1.Items.Count-1  do
   if MaxWidth < ListBox1.Canvas.TextWidth(ListBox1.Items.Strings[i1]) then
     MaxWidth := ListBox1.Canvas.TextWidth(ListBox1.Items.Strings[i1]);
   SendMessage(ListBox1.Handle, LB_SETHORIZONTALEXTENT, MaxWidth+8, 0);
end;

Пробовал для Combobox"а, что-то не выходит.


 
Shnabs   (2005-03-02 00:49) [5]

Ну че так и нет идей по этому поводу? Спасибо Fenik, пригодилось, только там для ComboBox.Style = csDropDown or csDropDownList, а мне  еще нужно для csSimple, а по поводу oslep, у меня знаний не хватает может что по проще есть?


 
Fenik   (2005-03-02 20:06) [6]

> Shnabs

Что тебе мешает взять Edit + ListBox и написать пару обработчиков событий?



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

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.974 c
3-1108841691
Bogdan
2005-02-19 22:34
2005.03.20
Отсортировать по дате


4-1107500617
oleg_SYS
2005-02-04 10:03
2005.03.20
Как создать меню с помощью Win API?


1-1109693041
Vasilisk
2005-03-01 19:04
2005.03.20
Быстрый поиск по HTML


3-1109046479
pluto
2005-02-22 07:27
2005.03.20
Сортировка по убыванию


1-1109924793
Alexandre
2005-03-04 11:26
2005.03.20
Скрытие формы




   Наверх