在StringGrid中,我将表格的水平线和竖线设为不显示,然后希望使表格的第一列的右边框线显示出来,采用绘制的方法,该如何绘制呢?请大家指点一下,谢谢。
解决方案 »
- delphi中webbrowser控件如何模拟点击网页上FRAME中的超链接。
- 请教关于win2000下softice的安装问题!!
- 本人高分寻coreApi! 100 分 ,先给20
- Delphi下奇怪的ISAPI问题,高分求解
- 结构体的问题
- 看不懂这个错误大家看一看,Project 123.exe raised exception class EAccessViolation with message 'Access violation at address 00404
- 見死不救非好漢
- 应聘,急!
- 关于抓图的问题?
- 如何动态改变DBGrid的表行颜色?
- 【100分】ClientSocket重新连接问题
- 如何判断RzCheckTree每一个复选框的节点?
stringgrid1.GridLineWidth:= 0; //平线和竖线设为不显示//画得一般般
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
r:TRect;
begin
if ACol = 0 then
begin
r.Left:= Rect.Left+1;
r.Bottom:= Rect.Bottom;
StringGrid1.Canvas.Pen.Color:= CLRed;
StringGrid1.Canvas.Pen.Width:= 6;
StringGrid1.canvas.LineTo(r.Left,r.bottom);
end;
end;
//平线和竖线设为不显示
stringgrid1.GridLineWidth:= 0; // 第0列,这个好一点
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
R: TRect;
begin
if ACol = 0 then
with TStringGrid(Sender).Canvas do
begin
R.Left:= Rect.Left;
R.Right:= Rect.Left+2;
R.Top:= Rect.Top;
R.Bottom:= Rect.Bottom;
Brush.Color := clRed;
FillRect(R);
TextOut(Rect.Left, Rect.Top, TStringGrid(Sender).Cells[ACol, ARow]);
end;
end;