delphi小问题 生成pas出错,怎么办?

Description of your first forum.

delphi小问题 生成pas出错,怎么办?

帖子zuke123456 » 星期五, 2006年1月20日 12:53


unit zdbbscq;

interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, ComCtrls, Grids, DBGrids, StdCtrls, DBCtrls, DB, DBTables,ComObj,
 DBGrid2Excel;
type
 function zdbbscq(xmmc:string):boolean;

implementation
 function zdbbscq(xmmc:string):boolean;
 var
 Query1: TQuery;
 DataSource1: TDataSource;
 DBGrid1: TDBGrid;
 myxmb:array of string;
 aa,bb:string;
 i:integer;
 begin
 quary1.visible:=false;
 query1.Close;
 query1.sql.Clear;                            //关闭数据集
 query1.SQL.Add('select * from U_XM');        //查找U_XM表中的所有字段
 query1.Active:=true;                         //query1.Open;都可以打开数据集
 setlength(myxmb,querty1.recordcount);
 query1.First;                                //使指针指向第一条记录
 while  i:=0 to query1.recondcount-1 do                     //判断是否到达最后一条记录
 begin
 myxmb[i]:=query1.FieldByName('XMMC').asstring;
 query1.next;
 end;
 query1.Close;
 end;
end.
为什么我每在query1后打点,就提示不能调用呢?
采用后马上付分,谢谢
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子SiWeiLiuLang » 星期五, 2006年1月20日 12:56


1\写代码一点章法都没有,按下面建议改好再发出来
2、quary1.visible:=false;去掉
3、用IF not Adoquery.eof 来做循环,去掉quary1.visible:=false;
4\哪里提示错误了
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子SiWeiLiuLang » 星期五, 2006年1月20日 12:57


还有注意把章法弄好
该空格就空格
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子royal1442 » 星期五, 2006年1月20日 12:59


为什么我每在query1后打点,就提示不能调用呢?
可能是之前的代码中有错误,或者你没有引用该控件所在的单元!
PS:楼主的代码风格不敢恭维!
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子hsgrass » 星期五, 2006年1月20日 13:03


// 建议复习基础的书 : )
function zdbbscq(xmmc: string): boolean;
var
 Query1: TQuery; // dbtables.pas
 myxmb: array of string;
 aa, bb: string;
 i: integer;
begin
 query1 := TQuery.Create(Application);
 query1.Close;
 query1.SQL.text := 'select * from U_XM'; //琩тU_XMい┮Τ琿
 query1.open; //query1.Open;常ゴ??誹栋
 setlength(myxmb, query1.recordcount);
 query1.First; //ㄏ?材???
 while not query1.eof do //?琌?程???
 begin
   myxmb[i] := query1.FieldByName('XMMC').asstring;
   query1.next;
 end;
 query1.free;
end;
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子zuke123456 » 星期五, 2006年1月20日 13:05



我也刚学没几天,我是模仿着别人的写。谢谢
能不能把你的邮箱给我,请教请教
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子快乐果果 » 星期五, 2006年1月20日 13:09


while  i:=0 to query1.recondcount-1 do 语法错误
可以写为while not query1.eof do
改正后的代码如下
unit Unit2;

interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, ComCtrls, Grids, DBGrids, StdCtrls, DBCtrls, DB, DBTables,ComObj;
type
 TForm2 = class(TForm)
 function zdbbscq(xmmc:string):boolean;
end;
var
 Form1: TForm2;
implementation
function TForm2.zdbbscq(xmmc:string):boolean;
var
 Query1: TQuery;
 DataSource1: TDataSource;
 DBGrid1: TDBGrid;
 myxmb:array of string;
 aa,bb:string;
 i:integer;
begin
 //Query1.visible:=false;
 query1.Close;
 query1.sql.Clear;                            //关闭数据集
 query1.SQL.Add('select * from U_XM');        //查找U_XM表中的所有字段
 query1.Active:=true;                         //query1.Open;都可以打开数据集
 setlength(myxmb,Query1.RecordCount);
 query1.First;                                //使指针指向第一条记录
 while  not query1.Eof do                     //判断是否到达最后一条记录
 begin
   myxmb[i]:=query1.FieldByName('XMMC').asstring;
   query1.next;
 end;
 query1.Close;
end;
end.
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子chengangsir » 星期五, 2006年1月20日 13:13


query1首先要创建阿,还有和visble没有关系啊
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子zhlfdm » 星期五, 2006年1月20日 13:14


query1你建了数据库连接了吗???
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子zuke123456 » 星期五, 2006年1月20日 13:19


这样创建呢?query1 := TQuery.Create(Application);吗?
 
 
 

delphi小问题 生成pas出错,怎么办?

帖子zuke123456 » 星期五, 2006年1月20日 13:21


建了