如何让stringgrid的文字和数字居中,而不是左对齐(20分)

  • 主题发起人 主题发起人 soso
  • 开始时间 开始时间
在OnDrawCell事件中用DrawText自己画出来(使用DT_CENTER水平居中标志)
 
注意要把stringGrid.DefaultDrawing设为False
 
自己画
int DrawText(
HDC hDC, // handle to device context
LPCTSTR lpString, // pointer to string to draw
int nCount, // string length, in characters
LPRECT lpRect, // pointer to structure with formatting imensions
UINT uFormat // text-drawing flags
);
 
dbgrid.defaultdrawing:=false;

ondrawcell event:

canvas.textout(
rect.left+
(rect.width-canvas.textwidth(column.field.displaytext)) mod 2,
rect.top+3,
column.field.displaytext);
 
后退
顶部