![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| jsa |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: 1 Всего: 20 |
Hi All
есть тут у меня задачка одна: хочу создать некий контейнер визуальных объектов - область с воможность прокрутки(пока нужно по горизонтали), объекты внутри области - панели с неким расширенным набором свойств сейчас взял за основу TScrollBox, в котором создаются динамически несколько объектов TPanel на данном моменте интересует вопросы: 1 как сделать обработку кликов - т.е. кликнул по какой-то панели - она стала активной - каким либо образом перекрасилась 2 как выводить текст на панели( если ширина заранее не известна) что бы (возможно длинный) текст переносился автоматот на на другие строки по пробелам, или просто часть текста обрезалась и подставлялись 3 точки 3 если я изменю ширину одной панели - как сказать остальным что бы они подвинулись ЗЫЖ буду признателен за лыбые ссылки, коментарии, идеи -------------------- Все мы, на перине с песней, строим небо на земле © Ю. Шевчук |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Комментарий простой, компонент удобен когда используется много раз, для однократного использования можно воспользоваться фреймом, в нем реализовать все обработчики кликов и проч. , а на реальной форме кинуть скролбокс, в котором создать сам фрейм.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Bose |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 23 Всего: 51 |
присваивать создаваемым панелям обработчик OnClick. Например такой:
Для вывода текста в своём формате, сделать наследника(или class helper сойдёт?), в котором будет перекрыт метод protected метод Paint. И соответственно рисовать там текст со своими параметрами. Я сейчас не помню, но то ли у процедуры DrawText, то ли у TextOut, то ли у TextOutRect была возможность рисовать текст с переносами, либо укорачивать длинный текст многоточием.
Смотря как ты изменяешь ширину. Если ширина панели меняется сама по себе, и твой компонент-контейнер об этом не знает, то надо уведомлять компонент-контейнер, и пусть он уже настраивает ширину других панелей. В этом случае присвоить панелям обработчик OnResize, аналогично первому. |
||||||
|
|||||||
| jsa |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: 1 Всего: 20 |
-------------------- Все мы, на перине с песней, строим небо на земле © Ю. Шевчук |
|||
|
||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 23 Всего: 51 |
class helper позволяет добавить к классу новые метода без написания наследника. но это в общем и неважно. Наверняка у тебя не просто TPanel используются, а определён свой наследник. |
|||
|
||||
| jsa |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 704 Регистрация: 19.1.2006 Где: Новосибирск Репутация: 1 Всего: 20 |
ага, так и есть -------------------- Все мы, на перине с песней, строим небо на земле © Ю. Шевчук |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |