请问:如何保存dbgrid的列宽,或者自动适应列宽?

limitanger 2006-03-02 02:09:44
请问:如何保存dbgrid的列宽,或者自动适应列宽?我用了dbgridEH,Rzdbgrid,但是还是实现不了!
...全文
227 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
aiirii 2006-03-02
  • 打赏
  • 举报
回复
http://www.xker.com/article/articleview/2004-12-16/article_view_249.htm

Delphi中实现DBGrid列宽度自动调整



使DBGrid的列自动调整到何时大小
http://www.7880.com/info/Article-38ac0e80.html

procedure MakeDBGridColumnsAutoFixItsWidth(objDBGrid:TDBGrid);
var
cc:integer;
i,tmpLength:integer;
objDataSet:TDataSet;
aDgCLength:array of integer;
begin
cc:=objDbGrid.Columns.Count-1;
objDataSet:=objDbGrid.DataSource.DataSet;
setlength(aDgCLength,cc+1);
file://取标题字段的长度
for i:=0 to cc do
begin
aDgCLength[i]:= length(objDbGrid.Columns[i].Title.Caption);
end;

objDataSet.First;
while not objDataSet.Eof do
begin
file://取列中每个字段的长度
for i:=0 to cc do
begin
tmpLength:=length(objDataSet.Fields.Fields[i].AsString);
if tmpLength>aDgCLength[i]
then aDgCLength[i]:=tmpLength;
end;
objDataSet.Next;
end;


for i:=0 to cc do
begin
objDbGrid.Columns[i].Width:=aDgCLength[i]*7;
end;
end;

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧