Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.27;
Скачать: [xml.tar.bz2];

Вниз

Работа с RichEdit - проблемы   Найти похожие ветки 

 
Иванько   (2003-10-15 18:37) [0]

При работе с RichEdit возникают следующие неудобства:
1) необходимо выделить участок текста цветом –
richedit1.selstart:=1; richedit1.SelLength:=100000; richedit1.SelAttributes.Color:=clRed; richedit1.SelLength:=0;
при наличии достаточно длинного выделения это визуально видно пользователю и занимает длительное время. Была идея создать невидимый richedit и делать все изменения с ним, но как потом перенести все его содержимое, включая форматирование текста на richedit1? Что-то я не нашел такого свойства, есть свойство text и lines.string[] но они вроде как только текст и хранят… А может быть есть другой метод, более красивый???
2) Как изменить цвет для всего текста?
richedit1.selstart:=0; richedit1.SellectAll; richedit1.SelAttributes.Color:=clRed; richedit1.SelLength:=0;
визуально тоже очень заметно.
И вообще, не нравится мне RichEdit. Может для редактирования он и подходит, но в качестве визуализатора что то не очень… Каким компонентом его можно заменить (требования: отображать разные участки текста разным цветом, позиционирование курсора, редактирование текста – желательно)?


 
Мафиозо   (2003-10-15 21:12) [1]

2) Richedit1.Font.Color:=clRed


 
Ugh   (2003-10-16 02:04) [2]

Посмотреть в папке ...Delphi5/Demos/RichEd


 
SergP   (2003-10-16 07:47) [3]


> Ugh (16.10.03 02:04) [2]
> Посмотреть в папке ...Delphi5/Demos/RichEd


Ты хочешь сказать что оно там есть?


 
Иванько   (2003-10-16 18:41) [4]

Та не... Это все детское... Тама как раз все сделано как в редакторе - то есть выделяешь текст - нажал пимпу - он свойства ВЫДЕЛЕННОГО текста изменил... Так я сам и реализовал...
А вот как сделать не через выделение?


 
Иванько   (2003-10-16 18:56) [5]

а Richedit1.Font.Color:=clRed изменяет не весь текст, а абзац в позиции курсора...


 
Семен Сорокин   (2003-10-16 19:02) [6]

может так: сделать невидимый RichEdit (Parent = nil), при изменении в него скопировать текст - изменить, а потом обратно? сам не пробовал, но может красивше будет :)


 
Иванько   (2003-10-16 19:07) [7]

я тут не очень умный, уж простите... А парент=нил на кой ляд писать???
А тут такая проблема - копируем мы как раз сам текст, а не форматирование, если пользоваться свойством text... А как все полностью копировать я что то не догоняю....


 
mOOx_   (2003-10-16 19:11) [8]

Я когда-то точно такой же фигней страдал. Проблем было море. Я тут вот чо подумал: веть Lines - это TStrings. Значит есть BeginUpdate и EndUpdate. Что если перед началом изменения сделать бегин, а после, соответственно, енд. Может не так маргать будет.
ЗЫ: влом проект старый поднимать, так что на словах :)


 
Семен Сорокин   (2003-10-16 19:13) [9]

создаешь RichEdit в рантайме (парент не присваиваешь), копируешь текст, см.
http://delphimaster.net/view/1-1066312217/
изменяешь, а потом обратно


 
mOOx_   (2003-10-16 19:13) [10]

Все полностью: только что читал в каком-то разделе форума (не помню уже в каком). Делается это через SaveToStream. Не проверял.


 
mOOx_   (2003-10-16 19:14) [11]

Вот и ссылочка поспела :)


 
Иванько   (2003-10-16 19:15) [12]

хых... а вот что делают этот BeginUpdate и EndUpdate???
а то под рукой нет документашки???


 
mOOx_   (2003-10-16 19:21) [13]

Они не дают картинке на экране измениться после добавления/изменения данных. Пример:
Lines.BeginUpdate;
Lines.Clear;
Lines.EndUpdate;
Если у тебя в лайнс будет итемов так 1000, то при клеар картинка будет перерисовывать после каждого удаления итема (тоесть 1000 раз). А так, она нарисуется перед удалением и не измениться, пока не сделаешь ендапдате. Надеюсь понятно объяснил :)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.10.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.036 c
3-89181
RealShip
2003-10-08 15:16
2003.10.27
Ошибка


1-89319
P0tia
2003-10-15 19:35
2003.10.27
CoolBar


1-89274
prorok2
2003-10-13 14:44
2003.10.27
RichEdit и таблица


3-89174
Alina
2003-10-06 15:22
2003.10.27
Вопрос по FastReport


3-89093
Gaber-IIEP
2003-10-08 11:22
2003.10.27
IBQuery.Filter





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский