const
CFE_STRIKEOUT = $0008;
CFM_STRIKEOUT = $0008;
EM_SETCHARFORMAT = WM_USER + 68;
SCF_SELECTION = $0001;
// 应用删除线
procedure TForm1.ApplyStrikeoutAPI;
var
cf: TCharFormat;
begin
FillChar(cf, SizeOf(cf), 0);
cf.cbSize := SizeOf(cf);
cf.dwMask := CFM_STRIKEOUT;
cf.dwEffects := CFE_STRIKEOUT;
SendMessage(RichEdit1.Handle, EM_SETCHARFORMAT, SCF_SELECTION, LPARAM(@cf));
end;
// 取消删除线
procedure TForm1.RemoveStrikeoutAPI;
var
cf: TCharFormat;
begin
FillChar(cf, SizeOf(cf), 0);
cf.cbSize := SizeOf(cf);
cf.dwMask := CFM_STRIKEOUT;
cf.dwEffects := 0; // 移除删除线效果
SendMessage(RichEdit1.Handle, EM_SETCHARFORMAT, SCF_SELECTION, LPARAM(@cf));
end;
![image]()