|
2 | #6480 | цитата | 11-02-2016 04:26 |
В статье приведена полная ерунда - не работа с верхним и нижним индексами, а имитация такой работы.
На самом деле надо так:
| procedure TForm.Button1Click(Sender: TObjec ; var ChFormat: CHARFORMAT2; begin FillChar(ChFormat, SizeOf(ChForma , 0); with ChFormat do begin cbSize := SizeOf(ChForma ; dwMask := CFM_SUBSCRIPT; dwEffects := CFE_SUBSCRIPT; end; RichText1.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@ChForma ); end;
procedure TForm.Button2Click(Sender: TObjec ; var ChFormat: CHARFORMAT2; begin FillChar(ChFormat, SizeOf(ChForma , 0); with ChFormat do begin cbSize := SizeOf(ChForma ; dwMask := CFM_SUPERSCRIPT; dwEffects := CFE_SUPERSCRIPT; end; RichText1.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@ChForma ); end; |
Использовать надо именно CHARFORMAT2, а не TCharFormat, иначе не работает. Вероятно версия 1.0 RichText не использовала индексы. |
|
|