为什么每每使用VartoStr函数出错,但教程范例中却使用该函数?
为什么在使用函数VartoStr每次都出现提示错误信息,范例语句(Label2.Caption:=InttoStr(Page)+ '/'
+VartoStr(myRs.PageCount);),在查找Delphi7的帮助信息却能够找到函数VartoStr,帮助信息(function
VarToStr(const V: Variant): string;),请问为什么?
出错提示如下:
[Error] Unit3.pas(52): Undeclared identifier: 'VartoStr'
[Fatal Error] page.dpr(5): Could not compile used unit 'Unit3.pas'
例程全文如下:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComObj;
type
TForm1 = class(TForm)
ListBox1: TListBox;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Edit1: TEdit;
Button3: TButton;
Label2: TLabel;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
myCn : Variant;
myRs : Variant;
testpage : Integer;
procedure showpage(page:integer);
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.showpage(page:integer);
var
I,J:Integer;
Str:String;
begin
ListBox1.Clear;
Str:='';
//显示字段抬头
For I:=0 To myRs.Fields.Count-1 Do
Begin
Str:=Str+myRs.Fields[I].Name+chr(VK_TAB);
End;
ListBox1.Items.Add(Str);
//显示目前浏览页次与全部页次
Label2.Caption:=InttoStr(Page)+'/'+VartoStr(myRs.PageCount);
myRs.AbsolutePage:=page;
testpage:=page;
//显示目前浏览页次的记录内容
For I:=1 To myRs.PageSize Do
Begin
Str:='';
For J:=0 To myRs.Fields.Count-1 Do
Begin
Str:=Str+vartoStr(myRs.Fields[J].Value)+chr(VK_TAB);
End;
ListBox1.Items.Add(Str);
myRs.MoveNext;
if myRs.Eof Then Exit;
End;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
myconnstr:String;
begin
//建立Connection对象
myCn:=CreateOleObject('ADODB.Connection');
myconnstr:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Records.mdb';
myCn.Open(myconnstr);
//建立RecordSet对象
myRs:=CreateOleObject('ADODB.RecordSet');
myRs.open('RECORDS',myCn,3,1);
myRs.PageSize:=5;
showpage(1);
end;
//【上一页】按钮
procedure TForm1.Button1Click(Sender: TObject);
begin
If (testpage)<>1 then
showpage(testpage-1);
end;
//【下一页】按钮
procedure TForm1.Button2Click(Sender: TObject);
begin
If testpage<>myRs.PageCount then
showpage(testpage+1);
end;
//单击【跳页】按钮
procedure TForm1.Button3Click(Sender: TObject);
begin
If (strtoint(Edit1.text)<=Myrs.PageCount) and (strtoint(Edit1.text)>=1) then
showpage(strtoint(Edit1.text));
end;
end.