| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > ListBox |
| Автор: ivan219 21.4.2006, 20:17 |
| 1. Мне нужно убрать полосы прокрутки т.е. чтоб их небыло видно даже когда текста становится много и он выходит за пределы видимой части. 2. Мне надо программно выделять определённую стороку. |
| Автор: ivan219 21.4.2006, 21:04 |
| Спасибо. |
| Автор: ivan219 22.4.2006, 17:39 |
| SetScrollRange(ListBox1.Handle, SB_VERT, 0, 0, true); Это неработает т.е. ошибок нет но и скрол неисчез. Может даш маленький пример |
| Автор: Guedda 22.4.2006, 17:46 |
Почему? У меня все работает... Вот скриншот. В ЛистБоксе 47 записей. Я в FormCreate прописал эту процедуру... |
| Автор: Yanis 23.4.2006, 19:35 |
А то, что я привёл не пример? |
| Автор: ivan219 23.4.2006, 19:42 |
| Да точно работает просто надо было запускать эту функцию после того как список заполнится но до этого скрол будет видно и если его поместить в FormCreate нечего неполучится так как список в ListBox заполняется динамически, может кто знает как его вобще убрать. Есть ещё вопросы вот уменя 6 FListBox я у 5 из них убраб скрол но теперь мне надо их синхронизировать, вобщем какая порцедура отвечает за изменение положения ползунка |
| Автор: Yanis 23.4.2006, 19:59 |
Delphi 7 -> Help -> Windows SDK -> Указатель -> "Scroll Bar Functions" Добавлено @ 20:02 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceui40/html/ceconscrollbarfunctions.asp |
| Автор: Yanis 24.4.2006, 00:02 | ||||||
| Минус что ли поставить тебе для стимуляции мозга... Хотя в таком случае я буду похож на преподов в универе и учителей в школе Никак. Отслеживать прокрутку и заново прятать. К стати прятать можно ещё и стандартной для таких целей функцией ShowScrollBar:
Для прокрутки scroll bar'а используется функция SetScrollPos или сообщение SBM_SETPOS. В твоём случае для синхронизации прокрутки можно использовать ItemIndex
|
| Автор: ivan219 24.4.2006, 18:38 |
| Я знаю как их синхронизировать ListBox1.TopIndex:= ListBox6.TopIndex; я это зделал но препомощи шелчка мыши на самом ListBox а мне надо когда щёлкаеш непосредственно на самом Scroll как это зделать я незнаю стандартной процедуры в ListBox нет, так бы я и сам нашол, вчера всё перерыл неодна неподходит а это значит что надо както ещё но вот как я незнаю Я с этим ещё несталкивался а ты на меня разозлился спрашивается за что |
| Автор: Yanis 24.4.2006, 19:03 | ||
Ответ в PM |
| Автор: ivan219 24.4.2006, 19:54 |
| Нет там ответа И с сообщениями работать неумею. За это SetScrollRange(ListBox1.Handle, SB_VERT, 0, 0, true); спасибо всё работает Может всётаки есть добрые люди кторые помогут мне |
| Автор: Alexeis 25.4.2006, 14:11 |
| ivan219, есть такое сообщение WM_VSCROLL - отсылается контролу когда по нему кликают или тянут, похоже его надо ловить и синхронизировать. Добавлено @ 14:14 я как-то синхронизировал два memo. Полной синхронизации добится не удалось, но со скролбарами у меня все работало - делал наследника от memo и в нем писал процедуру обработчик этого самого WM_VSCROLL |
| Автор: ivan219 25.4.2006, 19:33 |
| WM_VSCROLL Здорово |
| Автор: Yanis 6.6.2006, 16:13 | ||||
Короче вот пример:
|
| Автор: ivan219 8.6.2006, 00:35 |
| Спасибо |