Ple*_*rds 4 delphi delphi-2006
继续该项目开始于:
如何根据其内容自动调整/缩放DBGrid(或其他类似的)列宽?
如何计算"左"属性以使文本在DBGrid单元格中居中?
当我们调用OnDrawColumnCell并使用Canvas编写文本来代替网格的默认绘制时,当我们想要将其置于单元格中心时,我们如何计算文本的位置?
别.使用DrawText/ 绘制文本DrawTextEx并DT_CENTER在format参数中指定.另请参见在矩形的中心绘制文本多行.
或者,如果您想要或需要自己计算:
procedure DrawCenteredText(Canvas: TCanvas; const S: String; R: TRect);
var
Left: Integer;
begin
Left := R.Left + (R.Right - R.Left - Canvas.TextWidth(S)) div 2;
Run Code Online (Sandbox Code Playgroud)
更多可能性的更简单方法是:
Canvas.TextRect(Rect,s,[tfCenter,tfVerticalCenter,tfSingleLine]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
933 次 |
| 最近记录: |