在网上找了一段自动调整列宽的代码,可是不知把它贴在哪个form里的哪个位置,是拆开来一段段放,还是??/
刚学请知道的朋友说下。
interface
THackDBGridEH = class(TCustomdbgrideh)
end;procedure OptimizeGrid(AGrid: TCustomDbGridEh);implementation
procedure OptimizeGrid(AGrid: TCustomDbGridEh);
var
i: integer;
begin
// 優化GRID的寬度
for i := 0 to TDBGridEh(AGrid).Columns.count - 1 do
THackDBGridEH(AGrid).OptimizeSelectedColsWidth(TDBGridEh(AGrid).Columns[i]);
end;
刚学请知道的朋友说下。
interface
THackDBGridEH = class(TCustomdbgrideh)
end;procedure OptimizeGrid(AGrid: TCustomDbGridEh);implementation
procedure OptimizeGrid(AGrid: TCustomDbGridEh);
var
i: integer;
begin
// 優化GRID的寬度
for i := 0 to TDBGridEh(AGrid).Columns.count - 1 do
THackDBGridEH(AGrid).OptimizeSelectedColsWidth(TDBGridEh(AGrid).Columns[i]);
end;
procedure OptimizeColsWidth(ColumnsList: TColumnsEhList);
它是在protected中的,把它移动到public域,这样就在程序中就可以调用。即放在public域中,調用時:dbgrideh1.OptimizeColsWidth(DBGridEh1.VisibleColumns);
unit ajust;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, GridsEh, DBGridEh, DB, ADODB, ExtCtrls, StdCtrls, Buttons;type
TForm11 = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGridEh1: TDBGridEh;
Panel3: TPanel;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit2: TEdit;
GroupBox2: TGroupBox;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
private
{ Private declarations }
public
{ Public declarations }
end;var
Form11: TForm11;implementationuses share;{$R *.dfm}end.
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, GridsEh, DBGridEh, DB, ADODB, ExtCtrls, StdCtrls, Buttons;type
THackDBGridEH = class(TCustomdbgrideh); TForm11 = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGridEh1: TDBGridEh;
Panel3: TPanel;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit2: TEdit;
GroupBox2: TGroupBox;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
private
{ Private declarations }
public
{ Public declarations }
end;var
Form11: TForm11;implementationuses share;{$R *.dfm}procedure ADOQuery1AfterOpen( Sender: TObject )
begin
// 数据集打开后自动列宽所有可视列
THackDBGridEH(DBGridEh1).OptimizeColsWidth(DBGridEh1.VisibleColumns);
end;end.