Форум: "Основная";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];
ВнизЕсть ли аналог компонентов MEMO или RichEdit в delphi? Найти похожие ветки
← →
Kiloper (2006-08-08 17:53) [0]Есть ли аналог компонентов MEMO или RichEdit в delphi, но только чтобы текст можно было менять стиль тескта по строчкам, например одна строчка 10 шрифтом жирная, а другая курсивом 12 шрифтом? Или как это можно осуществить?
← →
Ketmar © (2006-08-08 17:55) [1]TRichEdit, ага? f1 и курить до пресветленияю вместе с каталогом demos.
← →
tButton © (2006-08-08 19:34) [2]воевал с рич едитом
вроде б нормально получается добавлять строки с разной подсветкой, но)
если во время добавления строки в рич едите выделен текст. то подсветка применяется не к добавляемой строке, а к выделеному тексту)
← →
Shaman_ © (2006-08-08 19:51) [3]все офирмление в RichEdit описывается с помощью RTF разметки. Формируй праввильный RTF код
← →
Ketmar © (2006-08-08 20:42) [4]> [2] tButton © (08.08.06 19:34)
так снимай выделение. дел-то? %-)
← →
Anatoly Podgoretsky © (2006-08-08 21:01) [5]Форматирование применяется к выделеному тексту.
← →
Ketmar © (2006-08-08 22:23) [6]или устанавливается для набираемых буковок, если выделения нет.
зыж я знаю, что Земля не круглая. (ц) %-)
← →
Германн © (2006-08-09 02:03) [7]2 Ketmar © (08.08.06 22:23) [6]
> зыж я знаю, что Земля не круглая. (ц) %-)
Давно уже не смешно. Твоя прежняя подпись была более смешной. Имхо.
Прошу прощения за offtop.
← →
Ketmar © (2006-08-09 02:06) [8]> [7] Германн © (09.08.06 02:03)
а я и не смеялся. я намекал на то, что в курсе ньюансов работы richedit, и разжёвывать их не надо.
← →
TButton © (2006-08-09 05:34) [9]
> так снимай выделение. дел-то? %-)
представь ситуацию
выделяешь ты текст из лога, чтоб копипастнуть его. бэмс! и снялось выделение. почему? а строчка добавилась. не вежливо.
ждать же пока юзер сам снимет выделение - глупо. запретить выделять - опять не вежливо.
поэтому, хотелось бы сцылку на инфу по
> RTF разметки. Формируй праввильный RTF код
← →
Ketmar © (2006-08-09 09:58) [10]> [9] TButton © (09.08.06 05:34)
а сохранить старое выделение и вернуть на место после добавления строки -- никак?
> хотелось бы сцылку на инфу
google, rtf specification.
← →
Shaman_ © (2006-08-09 13:58) [11]Я уже писал выше про использование RTF кода
Вот так можно получить RTF код:
function GetRTFText(ARichEdit: TRichedit): string;
var
ss: TStringStream;
emptystr: string;
begin
emptystr := "";
ss := TStringStream.Create(emptystr);
try
ARichEdit.PlainText := False;
ARichEdit.Lines.SaveToStream(ss);
Result := ss.DataString;
finally
ss.Free
end;
end;
А вот так записать RTF код в TRichEdit
procedure SetRTFText(ARichEdit: TRichEdit; const ARTFText: string);
var
ss: TStringStream;
begin
ss := TStringStream.Create(ARTFText);
try
ARichEdit.PlainText := False;
ARichEdit.Lines.LoadFromStream(ss);
finally
ss.Free;
end;
end;
Чтобы быстрей понять как устроена RTF разметка, отформатируй строку в ворде и вставляй в TRichEdit, потом смотри получившийся код
← →
Anatoly Podgoretsky © (2006-08-09 19:49) [12]Ketmar © (08.08.06 22:23) [6]
Выделение есть всегда, только SelLength=0
← →
Ketmar © (2006-08-09 20:43) [13]> [12] Anatoly Podgoretsky © (09.08.06 19:49)
ну я же сказал, что в курсе формы Земли... %-)
← →
TButton © (2006-08-10 06:23) [14]я вот подумал, а не проще ли будет рендерить текст на битмап?
т.е. хранить лог и по необходимости рендерить нужный кусок
← →
Ketmar © (2006-08-10 11:38) [15]> [14] TButton © (10.08.06 06:23)
или так. но сделать нормальный richView -- это задача не на 5 минут.
← →
tButton © (2006-08-10 13:28) [16]
> но сделать нормальный richView
зависит от задачи.
← →
Ketmar © (2006-08-10 13:33) [17]> [16] tButton © (10.08.06 13:28)
не спорю. см. мой TAKChat -- я там пытался подобное начать. правда, сделано коряво, но задумка была. можешь попробовать взять и довести до ума -- код там public domain.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.047 c