| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Создание кнопки на RichEdit |
| Автор: TP@MB@Y 20.5.2006, 22:37 |
| Хочу динамически создавать кнопку напротив нужного текста в RichEdit. Что-то не получается, даже, если вручную на него положить кнопку, то она не видна. У кого какие соображения на этот счет? PS Задача у меня такая: я ввывожу текст на экран(через richedit). Текст этот - некая информация, разделенная на части. Вот хочу сделать, чтобы пользователь мог кликать по нужной части(ну хотябы по кнопочке напротив этого текста) и тем самым было ясно что пользователь выбрал. |
| Автор: TP@MB@Y 21.5.2006, 01:40 |
| Упс... Меня что-то сглючило. Прошу модераторов перенести в общий раздел тему... Заранее спасибо и сорри |
| Автор: Sunvas 21.5.2006, 02:02 |
| TP@MB@Y, что-то понять трудновато.. Приведи пример кода, нарисуй в паинте нужный результат.. |
| Автор: Poseidon 21.5.2006, 04:11 | ||
Ну тык создавай
|
| Автор: Sunr1se 21.5.2006, 09:08 |
Правой кнопкой на Button'е->Control->Bring To Front Может быть создать таких кнопок побольше, сделать их невидимыми, а в нужный момент перемещать их на RichEdit? Некрасиво и неудобно, но все же... |
| Автор: TP@MB@Y 21.5.2006, 14:26 |
| Poseidon, Sunr1se, Спасибо, буду пробовать Sunvas, ну куском кода тут не обойтись) Вобщем я по заданным параметрам генерирую табулатуры (например аккордов). И мне хочется, чтобы пользователь мог только одним кликом выбрать нужную табулатуру(она в виде текста в RichEdit) и тем самым прога будет знать что пользователь выбрал и делать нужные действия. Вот я и думаю: вывожу табулатуру на экран, потом рядом создаю кнопку, вешаю на нее событие(например присваивание переменной номера табулатуры). А еще думаю такой вариант: вместо RichEdita поставить чтонибуть типа ListView и сделать один столбец, чтобы в каждой ячейке был текст(многострочный) и тогда не надо будет заморачиваться с кнопками... Как думаете? |
| Автор: Sunr1se 21.5.2006, 16:23 |
| Я думаю, что под эти нужды можно заточить Virtual Treeview: http://www.delphi-gems.com/VirtualTreeview/ Там в демке есть то, что тебе нужно: список, и напротив каждого элемента стоит либо CheckBox, либо RadioButton. |
| Автор: TP@MB@Y 21.5.2006, 20:28 |
| Sunr1se, я посмотрел и пришел к выводу что мне подойдет просто ListView, но там многострочный текст не проходит. Вместо #10#13 выводятся черточки. Что делать? |
| Автор: Sunr1se 22.5.2006, 11:41 |
| Там же вроде string используется... Его мнострочным сделать не получится. |
| Автор: Sunr1se 22.5.2006, 15:53 |
| Кстати, я сейчас попробовал динамически создавать кнопку на RichEdit'е, так она сверху оказывается, никуда не пропадает. И еще один вариант. Может быть создавать для каждой табулатуры свой RichEdit и вешать на него событие OnContextPopup? Тогда нужное тебе действие будет происходить при нажатии правой кнопки на RichEdit. Вот только хватило бы места... |
| Автор: TP@MB@Y 22.5.2006, 18:26 |
| Sunr1se, Не. С кнопками завязано) Я через AdvListView буду делать - там широкие возможности для этого. Но всеравно за помощь |