以下是我的代码
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RzButton, RzRadChk, RzPanel, RzRadGrp, ExtCtrls, DBCtrls,
RzDBNav, Grids, DBGridEh, DB, ADODB;type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGridEh1: TDBGridEh;
RzDBNavigator1: TRzDBNavigator;
RzRadioGroup1: TRzRadioGroup;
RzRadioButton1: TRzRadioButton;
RzRadioButton2: TRzRadioButton;
btnSortClick: TRzButton;
procedure ADOQuery1AfterOpen(DataSet: TDataSet);
procedure btnSortClickClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
public
{ Public declarations }
function Fields: TFields;
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ADOQuery1AfterOpen(DataSet: TDataSet);var
iCount : Integer ;
begin
for iCount := 0 to ADOQuery1.Fields.Count - do
begin
rgFieldCustNames.Items.Add(ADOQuery1.Fields[iCount].FieldCustName);
end;
rgFieldCustNames.ItemIndex := 0;
end;procedure TForm1.btnSortClickClick(Sender: TObject);
begin
ADOQuery1.Sort := GetFieldCustName + GetSortWay;
end;function TForm1.GetFieldCustName: string ;
begin
Result := ADOQuery1.Fields[rgFieldCustNames.ItemIndex].FieldCustName;
end;function TForm1.GetSortWay: string ;
begin
Result := 'ASC';
if rbtnDESC.Checked then
Result := 'DESC';
end;procedure TForm1.FormCreate(Sender: TObject);
begin
try
ADOConnection1.Connected:=true;
Except
Application.MessageBox('数据库连接失败,请检查参数!','警告',mb_iconwarning)
end;
end;procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
ADOConnection1.Connected:=false;
end;end.
不知道哪儿错了,高手帮忙看看
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RzButton, RzRadChk, RzPanel, RzRadGrp, ExtCtrls, DBCtrls,
RzDBNav, Grids, DBGridEh, DB, ADODB;type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGridEh1: TDBGridEh;
RzDBNavigator1: TRzDBNavigator;
RzRadioGroup1: TRzRadioGroup;
RzRadioButton1: TRzRadioButton;
RzRadioButton2: TRzRadioButton;
btnSortClick: TRzButton;
procedure ADOQuery1AfterOpen(DataSet: TDataSet);
procedure btnSortClickClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
public
{ Public declarations }
function Fields: TFields;
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ADOQuery1AfterOpen(DataSet: TDataSet);var
iCount : Integer ;
begin
for iCount := 0 to ADOQuery1.Fields.Count - do
begin
rgFieldCustNames.Items.Add(ADOQuery1.Fields[iCount].FieldCustName);
end;
rgFieldCustNames.ItemIndex := 0;
end;procedure TForm1.btnSortClickClick(Sender: TObject);
begin
ADOQuery1.Sort := GetFieldCustName + GetSortWay;
end;function TForm1.GetFieldCustName: string ;
begin
Result := ADOQuery1.Fields[rgFieldCustNames.ItemIndex].FieldCustName;
end;function TForm1.GetSortWay: string ;
begin
Result := 'ASC';
if rbtnDESC.Checked then
Result := 'DESC';
end;procedure TForm1.FormCreate(Sender: TObject);
begin
try
ADOConnection1.Connected:=true;
Except
Application.MessageBox('数据库连接失败,请检查参数!','警告',mb_iconwarning)
end;
end;procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
ADOConnection1.Connected:=false;
end;end.
不知道哪儿错了,高手帮忙看看
begin
rgFieldCustNames.Items.Add(ADOQuery1.Fields[iCount].FieldCustName);
end;
这个循环至少要把移动指针吧
next;上面那个Count 少个-1吧