Вверх ↑
Этот топик читают: Гость
Ответов: 21
Рейтинг: 1
#46: 2011-12-13 07:50:41 ЛС | профиль | цитата
iarspider, Теперь чтобы отменить форматирование надо писать ещё один обработчик, как я понимаю?
------------ Дoбавленo в 07.51:
И кстати, nesco, ты хочешь что бы так работало?

akron писал(а):
iarspider, nesco, думаю так будет правильно:


#pas
procedure THIRichEdit._work_doFormat;
var Text:string;
p:byte;
oldColor, oldStart, oldEnd: integer;
oldBold,oldItalic,oldUnderline:Boolean;

begin
if (Control.SelLength <> 0) then {no valid selection -> quit}
begin
Control.RE_CharFmtArea := raSelection; {apply attribute(s) only to selection}

oldColor := Control.RE_FmtFontColor;
oldBold := Control.RE_FmtBold;
oldItalic := Control.RE_FmtItalic;
oldUnderline := Control.RE_FmtUnderline;
oldStart := Control.SelStart;
oldEnd := Control.SelStart+Control.SelLength-1;

Control.RE_FmtFontColor := ReadInteger(_Data,_data_Color,0);

p := ReadInteger(_Data,_data_Style,0);
Control.RE_FmtBold := p and 1 > 0;
Control.RE_FmtItalic := p and 2 > 0;
Control.RE_FmtUnderline := p and 4 > 0;

Control.SelStart := -1;

Control.RE_FmtFontColor := oldColor;
Control.RE_FmtBold := oldBold;
Control.RE_FmtItalic := oldItalic;
Control.RE_FmtUnderline := oldUnderline;
Control.SelLength:=0;
end;
end;


тут свойства шрифта не наследуются, если продолжаешь писать
карма: 0

0
Ответов: 5446
Рейтинг: 323
#47: 2011-12-13 15:29:54 ЛС | профиль | цитата
akron, что значить "отменить форматирование"? Ты видео смотрел? А код понял?
карма: 1

0
Ответов: 21
Рейтинг: 1
#48: 2011-12-13 19:39:05 ЛС | профиль | цитата
iarspider писал(а):
что значить "отменить форматирование"?


Ну допустим выделил жирным, а потом передумал, и нужно убрать выделение жирным.
карма: 0

0
Ответов: 5446
Рейтинг: 323
#49: 2011-12-13 19:47:34 ЛС | профиль | цитата
akron, только заново выставив все свойства. Undo вроде на эту операцию не распространяется.
карма: 1

0
Разработчик
Ответов: 26170
Рейтинг: 2127
#50: 2011-12-13 20:17:38 ЛС | профиль | цитата
akron писал(а):
Ну допустим выделил жирным, а потом передумал, и нужно убрать выделение жирным

Стандартные же коды работают -- <Ctrl><B>, <Ctrl><I>, <Ctrl><U>
карма: 22

0
Ответов: 5446
Рейтинг: 323
#51: 2011-12-14 00:18:52 ЛС | профиль | цитата
nesco, ты изменения в RichEdit принимаешь? Заливать на SVN?
карма: 1

0
Разработчик
Ответов: 26170
Рейтинг: 2127
#52: 2011-12-14 00:26:54 ЛС | профиль | цитата
iarspider писал(а):
Заливать на SVN?

Я уже залил, только без этого безобразия с возвратами, тк эта идея оказалась бесперпективной. Посмотри, может чего не так, но вроде проверял
карма: 22

0
Главный модератор
Ответов: 2999
Рейтинг: 396
#53: 2011-12-14 12:21:53 ЛС | профиль | цитата
Можно вот так сделать richeditwindowspacket.sha

Чем не VBS_to_EXE?
карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
0
файлы: 1richeditwindowspacket.sha [20.6KB] [256]
53
Сообщение
...
Прикрепленные файлы
(файлы не залиты)