用SncCurrencyEdit控件,这个控件能实现这个功能。
解决方案 »
- 如何给NOT NULL 字段赋一个空值
- 如何让DateTimePicker都是取到本月1号
- 关于tquery控件问题
- 请教一个数据库的查询统计,问题解决本人必高分相送.请进来看看谢谢!
- QuickRep中如何打印特殊字符φ£¤¥§©
- 求助 在应用程序中如何感知用户输入法的切换
- 编译的问题
- 怎样在win2000下屏蔽系统热键 包括alt+ctrl+del 一定要win2000哦
- 如何打印预览一个DBCHART,给分100
- 使用ADODataSet实现查询时遇到的问题!
- 关于图形问题:
- 急急急 !!!!怎么在delphi中用UPDATE 语句将表里的某个字段的值更新为空呢?
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var R: TRect;
i,j: Integer;
begin
if Column.Index=0 then // 你要画的列
begin
i:=Column.Font.Size; // 每个字符的间隔
R:=Rect;
R.Left:=R.Left;
R.Top:=R.Top;
R.Right:=R.Right;
R.Bottom:=R.Bottom;
For j:=1 to (R.Right-R.Left) div i do
begin
DBGrid1.Canvas.Pen.Color:=clBlue; // 兰色线条
DBGrid1.Canvas.MoveTo(R.Right-j*i,R.Bottom-1);
DBGrid1.Canvas.LineTo(R.Right-j*i,R.Top-1);
end;
end;
end;你试试吧。
这个上面下个会计软件的源码,上面就有这个控件
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var R: TRect;
i,j: Integer;
begin
if Column.Index=0 then // 你要画的列
begin
i:=Column.Font.Size; // 每个字符的间隔
R:=Rect;
For j:=1 to (R.Right-R.Left) div i do
begin
DBGrid1.Canvas.Pen.Color:=clBlue; // 兰色线条
DBGrid1.Canvas.MoveTo(R.Right-j*i,R.Bottom-1);
DBGrid1.Canvas.LineTo(R.Right-j*i,R.Top-1);
end;
end;
end;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var R: TRect;
i,j: Integer;
begin
if Column.Index=0 then // 你要画的列
begin
i:=Column.Font.Size; // 每个字符的间隔
R:=Rect;
For j:=1 to (R.Right-R.Left) div i do
begin
DBGrid1.Canvas.Pen.Color:=clBlue; // 兰色线条
DBGrid1.Canvas.MoveTo(R.Right-j*i,R.Bottom-1);
DBGrid1.Canvas.LineTo(R.Right-j*i,R.Top-1);
end;
end;
end;如果显示不对就调整 i:=Column.Font.Size 的大小
和R.Right-j*i的起始位置。
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var R: TRect;
i,j: Integer;
S: String;
begin
if Column.Index=0 then
begin
i:=Column.Font.Size;
S:=DBGrid1.DataSource.DataSet.FieldByName(Column.FieldName).asString;
R:=Rect;
DBGrid1.Canvas.Brush.Color:=clInfoBk;
DBGrid1.Canvas.FillRect(R);
DBGrid1.Canvas.Pen.Color:=clBlack;
DBGrid1.Canvas.MoveTo(R.Left-1,R.Bottom);
DBGrid1.Canvas.LineTo(R.Left-1,R.Top-1);
DBGrid1.Canvas.LineTo(R.Right,R.Top-1);
DBGrid1.Canvas.LineTo(R.Right,R.Bottom);
DBGrid1.Canvas.LineTo(R.Left-1,R.Bottom);
For j:=1 to (R.Right-R.Left) div i do
begin
DBGrid1.Canvas.Pen.Color:=clBlue;
DBGrid1.Canvas.MoveTo(R.Right-j*i,R.Bottom-1);
DBGrid1.Canvas.LineTo(R.Right-j*i,R.Top-1);
if j<=Length(S) then DBGrid1.Canvas.TextOut(R.Right-j*i+2,R.Top+2,S[Length(S)-j+1]);
end;
end;
end;