Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание кнопки на RichEdit, как? 
V
    Опции темы
TP@MB@Y
Дата 20.5.2006, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



Хочу динамически создавать кнопку напротив нужного текста в RichEdit. 
Что-то не получается, даже, если вручную на него положить кнопку, то она не видна. 
У кого какие соображения на этот счет? smile

PS Задача у меня такая: я ввывожу текст на экран(через richedit). Текст этот - некая информация, разделенная на части. Вот хочу сделать, чтобы пользователь мог кликать по нужной части(ну хотябы по кнопочке напротив этого текста) и тем самым было ясно что пользователь выбрал.  
PM   Вверх
TP@MB@Y
Дата 21.5.2006, 01:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



Упс... Меня что-то сглючило. Прошу модераторов перенести в общий раздел тему...
Заранее спасибо и сорри 
PM   Вверх
Sunvas
Дата 21.5.2006, 02:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



TP@MB@Y, что-то понять трудновато.. Приведи пример кода, нарисуй в паинте нужный результат.. 


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Poseidon
Дата 21.5.2006, 04:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(TP@MB@Y @  20.5.2006,  22:37 Найти цитируемый пост)
Хочу динамически создавать кнопку
 Ну тык создавай smile

Код
var Btn: TButton;
begin
Btn:= TButton.Create(nil);
Btn.Parent:= Form1 ;
Btn.Left:= 5;
Btn.Top:= 5;
end;
 Left и Top указывай те, что тебе надо. Обработчик OnClick тоже сам присваивай. 


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Sunr1se
Дата 21.5.2006, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 1.5.2006

Репутация: 6
Всего: 13



Цитата(TP@MB@Y @  20.5.2006,  22:37 Найти цитируемый пост)
даже, если вручную на него положить кнопку, то она не видна

Правой кнопкой на Button'е->Control->Bring To Front
Может быть создать таких кнопок побольше, сделать их невидимыми, а в нужный момент перемещать их на RichEdit? Некрасиво и неудобно, но все же... 
--------------------
IRC-канал Винграда 
PM MAIL ICQ   Вверх
Poseidon
Дата 21.5.2006, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(Sunr1se @  21.5.2006,  09:08 Найти цитируемый пост)
Может быть создать таких кнопок побольше, сделать их невидимыми, а в нужный момент перемещать их на RichEdit? 
 И сколько ты их сделаешь? 100? 500? А вдруг все-равно не хватить? Для этой задачи правильнее создавать динамичсески.

 


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
TP@MB@Y
Дата 21.5.2006, 14:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



Poseidon, 
Sunr1se, 
Спасибо, буду пробовать


Sunvas,  ну куском кода тут не обойтись) Вобщем я по заданным параметрам генерирую табулатуры (например аккордов). И мне хочется, чтобы пользователь мог только одним кликом выбрать нужную табулатуру(она в виде текста в RichEdit) и тем самым прога будет знать что пользователь выбрал и делать нужные действия. 
Вот я и думаю: вывожу табулатуру на экран, потом рядом создаю кнопку, вешаю на нее событие(например присваивание переменной номера табулатуры).
А еще думаю такой вариант: вместо RichEdita поставить чтонибуть типа ListView и сделать один столбец, чтобы в каждой ячейке был текст(многострочный) и тогда не надо будет заморачиваться с кнопками... 

Как думаете? 
PM   Вверх
Sunr1se
Дата 21.5.2006, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 1.5.2006

Репутация: 6
Всего: 13



Я думаю, что под эти нужды можно заточить Virtual Treeview:
http://www.delphi-gems.com/VirtualTreeview/
Там в демке есть то, что тебе нужно: список, и напротив каждого элемента стоит либо CheckBox, либо RadioButton. 
--------------------
IRC-канал Винграда 
PM MAIL ICQ   Вверх
TP@MB@Y
Дата 21.5.2006, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



Sunr1se, 
я посмотрел и пришел к выводу что мне подойдет просто ListView, но там многострочный текст не проходит. Вместо #10#13 выводятся черточки. Что делать? 
PM   Вверх
Sunr1se
Дата 22.5.2006, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 1.5.2006

Репутация: 6
Всего: 13



Там же вроде string используется... Его мнострочным сделать не получится. 

Это сообщение отредактировал(а) Sunr1se - 22.5.2006, 11:49
--------------------
IRC-канал Винграда 
PM MAIL ICQ   Вверх
Sunr1se
Дата 22.5.2006, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 1.5.2006

Репутация: 6
Всего: 13



Кстати, я сейчас попробовал динамически создавать кнопку на RichEdit'е, так она сверху оказывается, никуда не пропадает.
И еще один вариант. Может быть создавать для каждой табулатуры свой RichEdit и вешать на него событие OnContextPopup? Тогда нужное тебе действие будет происходить при нажатии правой кнопки на RichEdit.
Вот только хватило бы места... smile 
--------------------
IRC-канал Винграда 
PM MAIL ICQ   Вверх
TP@MB@Y
Дата 22.5.2006, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 18.12.2004
Где: Москва

Репутация: нет
Всего: 4



Sunr1se, 
Не. С кнопками завязано) Я через AdvListView буду делать - там широкие возможности для этого. Но всеравно за помощь smile 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1274 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.