我现在想改变DBGRIDEH的边框颜色,将他改为clBlack,我作了下试验:
Dbgrideh1.borderStyle := bsNone;
Procedure TForm1.Button1Onclick(Sender: TObject);
var
dc: Hdc;
Rct: TRect;
begin
dc := GetWindowDc(Dbgrideh1.Handle);
Rct := Rect(0,0,Dbgrideh1.Width,Dbgrideh1.Height);
//
with Dbgrideh1.Canvas do
begin
Handle := dc;
Pen.Color := clBlack;
Pen.Width := 1;
Brush.Style := bsClear;
Rectangle(Rct);
end;
end;
我现在是靠按个按钮来改变的,我的目的是想界面显示时就实现这个功能,可搞不定
还有,一旦我改变COL的宽度全部画的边框就消失了,我知道是引起了控件的重画,可不知怎么去阻止他,试了些阻止重画的API函数,可搞得连COL的宽度都不能改了,希望指点迷津!!
Dbgrideh1.borderStyle := bsNone;
Procedure TForm1.Button1Onclick(Sender: TObject);
var
dc: Hdc;
Rct: TRect;
begin
dc := GetWindowDc(Dbgrideh1.Handle);
Rct := Rect(0,0,Dbgrideh1.Width,Dbgrideh1.Height);
//
with Dbgrideh1.Canvas do
begin
Handle := dc;
Pen.Color := clBlack;
Pen.Width := 1;
Brush.Style := bsClear;
Rectangle(Rct);
end;
end;
我现在是靠按个按钮来改变的,我的目的是想界面显示时就实现这个功能,可搞不定
还有,一旦我改变COL的宽度全部画的边框就消失了,我知道是引起了控件的重画,可不知怎么去阻止他,试了些阻止重画的API函数,可搞得连COL的宽度都不能改了,希望指点迷津!!
解决方案 »
- toolbar中的按钮&webbrowser刷新问题
- 散分9
- delphi字符串转换问题。
- intraweb 用ado连接数据库 ,调试执行时提示如下错误:access violation 错误。代码如下:
- 问一个字幕滚动的问题
- ********严重散分*********今天看了一下DELPHI9的演示!对DELPHI更亲了!
- 高分求救。打包问题,谢谢
- 一定要解决啊,大虾们啊
- 各位大虾?请教一个头痛的问题。
- 如在的delphi中gride中加入CheckBox,RadioButton,下拉菜单,等等就象pb那样?
- 为什么我在DBGRIDEH的ONDrawColumnCell事件中改变FIXED Cell线的颜色无效了?
- delta 数据包赋给ClientDataSet,或PacketDataSet后怎样删除?
procedure TForm1.FormPaint(Sender: TObject);
var
Rct: TRect;
begin
Rct := Rect(Dbgrideh1.Left-1,Dbgrideh1.Top-1,Dbgrideh1.Left+Dbgrideh1.Width+1,Dbgrideh1.top+Dbgrideh1.Height+1);
with Form1.Canvas do
begin
Pen.Color := clBlack;
Pen.Width := 1;
Brush.Style := bsClear;
Rectangle(Rct);
end;
end;是在onpaint里,一楼是想当然的。