|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.07.2010, 10:23 | #1 |
Пользователь
Регистрация: 25.01.2009
Сообщений: 43
|
Добавление ScrollBar'ов к компоненту
Здравствуйте ПРОграммисты
Я создаю компонент, который будет служить для отображения музыкальных файлов, как в Total Commander'е, только колонок больше: Исполнитель, Альбом, Длительность и т п.... Ближе к делу =) Создаю новый компонент, от TCustomControl, прописал практически весь функционал, и теперь осталось прорисовать сам компонент... Это будет представлять из себя таблицу, вверху колонки, ниже идут поля, со значениями к каждой колонке (что-то я совсем очевидные вещи описываю Оо), поля должны прокручиваться, как по горизонтали, так и по вертикали, колонки наверху фиксированы и скролятся только по горизонтали вместе с полями. Теперь самый главный вопрос, как приделать СкроллБары к моему компоненту, так чтобы они реагировали, как я хочу, тоесть прокручивали не все, что есть на компоненте, а только то, что я хочу?? я пробовал в процедуре Paint запускать SetScrollInfo вот так: Код:
но, про проверке скроллы не появляются! В чем проблема? Или как нужно правильно добавлять скроллы? Зарание спасибо Последний раз редактировалось Lion-Tiger; 07.07.2010 в 10:59. |
07.07.2010, 11:51 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
а в CreateParams определены скролы?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
07.07.2010, 12:03 | #3 |
Пользователь
Регистрация: 25.01.2009
Сообщений: 43
|
Интересное замечание
Вроде нет, а как их определить?)) |
07.07.2010, 12:09 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
переопределите процедуру эту(подробнее в хелпе).
и там задайте в расширенный стиль. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
07.07.2010, 12:19 | #5 |
Пользователь
Регистрация: 25.01.2009
Сообщений: 43
|
Отлично, все зароботало, только вот вместо горизонтального скроллбара появляется вертикальный, параметры SetScrollInfo описаны выше
---------------------------------------------------- А нет, все нормально, оказывается SB_VERT - горизонтальный, а SB_HORZ - вертикальный =)) ---------------------------------------------------- хмм, наврено все наоборот, как и было, но я заменил в предыдущем коде строку с комментарием на nmax:=colleft; при прогоне программы colleft=276 width=200 и теперь показываются два скроллбара и какой я указываю в SB_****, у того полоска становится длиннее (которую двигают). и еще одно наблюдение, если указывать просто Handle, то эти самые полоски одинаковые, а если Self.Handle, то одна больше другой... Так и должно быть, или это я что-то не так делаю? ---------------------------------------------------- Вот процедура CreateParams Код:
Последний раз редактировалось Lion-Tiger; 07.07.2010 в 12:40. |
09.07.2010, 07:38 | #6 |
Пользователь
Регистрация: 25.01.2009
Сообщений: 43
|
Все, отлично, зарботало, надо было самый первый код исправить на
Код:
спасибо, за помощь!! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
по компоненту Chart | Smerch66 | Общие вопросы Delphi | 2 | 21.04.2010 08:11 |
Вопрос по компоненту MediaPlayer | FanAnnGeL | Компоненты Delphi | 4 | 17.02.2010 00:42 |
Прикрепление формы к компоненту | Impuls1989 | Компоненты Delphi | 2 | 28.11.2009 23:19 |
Вопрос по компоненту StringGrid | Vla9240 | Помощь студентам | 2 | 14.05.2009 22:36 |
Вопрос по компоненту MonthCalendar | AIst | Компоненты Delphi | 1 | 02.04.2009 13:25 |