![]() |
![]() ![]() ![]() ![]() |
|
Использовать SubScript или SuperScript в TRichEditDelphi , Компоненты и Классы , TMemo и TRichEditИспользовать SubScript или SuperScript в TRichEdit
Оформил: DeeCo
// yOffset values
type
TCharacterFormat = (CFM_Superscript, CFM_Subscript, CFM_Normal);
procedure RE_SetCharFormat(RichEdit: TRichEdit; CharacterFormat: TCharacterFormat);
var
// The CHARFORMAT structure contains information about
// character formatting in a rich edit control.
Format: TCharFormat;
begin
FillChar(Format, SizeOf(Format), 0);
with Format do
begin
cbSize := SizeOf(Format);
dwMask := CFM_OFFSET;
// Character offset, in twips, from the baseline.
// If the value of this member is positive,
// the character is a superscript;
// if it is negative, the character is a subscript.
case CharacterFormat of
CFM_Superscript: yOffset := 60;
CFM_Subscript: yOffset := -60;
CFM_Normal: yOffset := 0;
end;
end;
// The EM_SETCHARFORMAT message sets character formatting in a rich edit control.
// SCF_SELECTION: Applies the formatting to the current selection
Richedit.Perform(EM_SETCHARFORMAT, SCF_SELECTION, Longint(@Format));
end;
// Examples:
// Beispiele:
// Apply Superscript to the current selection
// Markierte Zeichen hoch stellen
procedure TForm1.Button1Click(Sender: TObject);
begin
RE_SetCharFormat(RichEdit1, CFM_Superscript);
end;
// Apply Subscript to the current selection
// Markierte Zeichen tief stellen
procedure TForm1.Button2Click(Sender: TObject);
begin
RE_SetCharFormat(RichEdit1, CFM_Subscript);
end;
Программный код, предоставленный вами, написан на языке Delphi и использует компонент TRichEdit для применения форматирования верхнего индекса или нижнего индекса к текущей выборке. Вот подробное описание того, что код делает:
Два примера процедур (Button1Click и Button2Click) демонстрируют, как использовать RE_SetCharFormat для применения верхнего индекса и низшего индекса к текущей выборке в TRichEdit-контроле соответственно. Альтернативное решение: Вместо использования члена yOffset для указания смещения от базовой линии можно использовать член dwEffects структуры TCharFormat. Это позволяет указать диапазон эффектов, включая верхний и низший индексы. Вот пример модифицированного кода: В этом модифицированном варианте член dwMask установлен в CFM_EFFECTS, а член dwEffects установлен в CE_SUPER (верхний индекс) или CE_SUBSCRIPT (низший индекс). Это позволяет использовать одну и ту же процедуру для применения как верхнего, так и низшего индекса. В статье описывается способ использования подписей (subscript) и надписи (superscript) в компоненте TRichEdit Delphi, с помощью процедуры RE_SetCharFormat. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: TMemo и TRichEdit ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||