可以截获DBGrid的OnDrawDataCell事件自己画线
type
TDrawDataCellEvent = procedure (Sender: TObject; const Rect: TRect; Field: TField; State: TGridDrawState) of object;
property OnDrawDataCell: TDrawDataCellEvent;
输出区域可由Rect得到,数据可由DBGrid.SelectedField得到,字体可由DBGrid.Font得到,计算数字宽度、高度可由Canvas.TextHeight、Canvas.TextWidth得到,应该很容易了吧!
缺点是编辑状态没有线。
透明的Edit只要继承一个子类,重载Paint方法应该就可以了,想画个猪头都行。