如题。
解决方案 »
- 请教RzNumericEdit 的问题
- 求助,关于安装Shell Controls and Automation 对象问题
- BDE与ISA SERVER冲突
- 图像校正中遇到的问题,请大家帮忙
- 能动态增加变量吗?如动态地增加Lable1,Lable2,...Lable30.目的是能关联动态的对象.
- 如何实现像QQ一样的移动到屏幕右边时,就自动隐藏?
- TSection 问题
- 动态生成多个TButton调用同一个onclick如何知道是哪个被按下?
- DELPHI6.0中文版下载?D版
- DBGridEh 动态显示多列无响应.
- 请问如何控制word中表格某一列的列宽啊?
- SOSOSOSOSOSOSOSOSOSOSOSOSOSOSOSOSOSOSOS
可能要自己写,至少我一直是自己写的!1,单击一行,最好是首先把options的dgRowSelect设置为true;你可以把一行选中,但是好象没单击事件,只有OnCellClick事件,是单击一个单元格的,如果你把开始的那个属性设置了,那么在这个事件中可以把整行选中,你也可以写自己的东西,把这个当成是单击一行!
比如说:
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
Showmessage(inttostr(Self.DBGrid1.DataSource.DataSet.RecNo));
//显示被单击了哪一行
end;2,我一般是在OnTitleClick事件中写的。
比如:
procedure TForm1.DBGrid1TitleClick(Column: TColumn);
var
i: integer;
begin
for i := 0 to Self.DBGrid1.Columns.Count-1 do
Self.DBGrid1.Columns[i].Color := DBGrid1.Color;
self.DBGrid1.Columns[Column.ID-1].Color := clBlue;
//因为没有选中一列的属性,所以必须自己去改变颜色,表示选中
showmessage(inttostr(Column.ID));//显示选中的列号
end;