//第一种重载的声明: TextRect( Rect: TRect; {矩形} X, Y: Integer; {相对于窗体的位置} const Text: string {文本} ); {如果要输出的文本超出指定的矩形将不被显示}
//第一种重载的举例: procedure TForm1.Button1Click(Sender: TObject); const R: TRect = (Left:0; Top:0; Right:60; Bottom:60); s = '万一的 Delphi 博客'; begin Canvas.Brush.Color := clWhite; Canvas.FillRect(R); Canvas.TextRect(R, 10, 10, s); end;
//效果图:

//第二种重载的声明: TextRect( var Rect: TRect; {矩形范围} var Text: string; {文本} TextFormat: TTextFormat = [] {选项; 集合类型, 默认值是个空的集合} ); {参数三是 TTextFormat 类型的集合, 它定义如下:} TTextFormat = set of TTextFormats; {TTextFormats 是个枚举, 定义如下} TTextFormats = (tfBottom, tfCalcRect, tfCenter, tfEditControl, tfEndEllipsis, tfPathEllipsis, tfExpandTabs, tfExternalLeading, tfLeft, tfModifyString, tfNoClip, tfNoPrefix, tfRight, tfRtlReading, tfSingleLine, tfTop, tfVerticalCenter, tfWordBreak); {所以参数三可以是下列值之一或它们的组合} tfBottom tfCalcRect tfCenter tfEditControl tfEndEllipsis tfPathEllipsis tfExpandTabs tfExternalLeading tfLeft tfModifyString tfNoClip tfNoPrefix tfRight tfRtlReading tfSingleLine tfTop tfVerticalCenter tfWordBreak //这个函数是 API 函数 DrawTextEx 的简化, 可以参见: DrawTextEx
//第二种重载的举例1: {默认是顶对齐、左对齐; 前两个参数都是传址的, 不能用常量} procedure TForm1.FormPaint(Sender: TObject); var R: TRect; S: string; begin R := ClientRect; InflateRect(R,-10,-10); {把矩形缩小一圈} S := 'Delphi'; Canvas.Brush.Color := clWhite; Canvas.FillRect(R); Canvas.TextRect(R, S); end;
//效果图:

//第二种重载的举例2: {单行文本、水平居中、垂直居中} procedure TForm1.FormPaint(Sender: TObject); var R: TRect; S: string; begin R := ClientRect; InflateRect(R,-10,-10); {把矩形缩小一圈} S := 'Delphi'; Canvas.Brush.Color := clWhite; Canvas.FillRect(R); Canvas.TextRect(R, S , [tfSingleLine, tfCenter, tfVerticalCenter]); end;
//效果图:

分类:
Delphi 的绘图功能
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧