启 启明星 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-19 #1 if (username.czy_quanxian=2) and (gzcp.edGzfs.Text='') then 这句话可以编译,但是运行就出错,当我把and改成or以后,又不会出错了,什么问题啊?
if (username.czy_quanxian=2) and (gzcp.edGzfs.Text='') then 这句话可以编译,但是运行就出错,当我把and改成or以后,又不会出错了,什么问题啊?
启 启明星 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #3 是这样的,这是在一个单元里面的一个自定义的过程(procedure), gzcp就是这个单元的名称,我想是不是在自定义过程当中,有什么特别的地方?
H ht99 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #4 问题在于你已经有了一个叫gzcp的过程,另外还有一个叫gzcp的对象,所以编译不出问题,运行时却不知道应该用哪个gzcp了 把gzcp过程改个名字就行了
一 一个过客 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #5 语法没问题,用or不出错大概因为根本没有被执行到。 所以问题出在gzcp.edGzfs.Text='',运行时刻gzcp.edGzfs.Text的访问有问题, 至于原因,要看你这段代码的执行的上下文
启 启明星 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #6 这个过程在创建Tgzcp这个窗体的时候被调用, 而这个过程也在gzcp.这个窗体相同的pas文件里面,这会不会产生什么问题?
T Tuatara Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #7 问题肯定出在gzcp.edGzfs.Text='' 因为(username.czy_quanxian=2)为 true 所以换成or时根本就不判断后面的假如你把这句 改成(username.czy_quanxian=-1) {结果为 false} 相信换成or也是出错。 问题可能是: 1、你的窗体gzcp还没创建 2、你的edGzfs (应该是一个TEdit对象吧?)没创建
问题肯定出在gzcp.edGzfs.Text='' 因为(username.czy_quanxian=2)为 true 所以换成or时根本就不判断后面的假如你把这句 改成(username.czy_quanxian=-1) {结果为 false} 相信换成or也是出错。 问题可能是: 1、你的窗体gzcp还没创建 2、你的edGzfs (应该是一个TEdit对象吧?)没创建
A aizb Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #9 原回即然找到了,你也明白了,我想gzcp不是单元名称,而是这个单元里窗体的名称,Form没有创建,当然要创建啦: gzcp:=Tgzcp.Create(Application);不过是在什么时候创建那得看你的程序的需要啦!
原回即然找到了,你也明白了,我想gzcp不是单元名称,而是这个单元里窗体的名称,Form没有创建,当然要创建啦: gzcp:=Tgzcp.Create(Application);不过是在什么时候创建那得看你的程序的需要啦!
启 启明星 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #10 这段程序我应该在 Tgzcp.FormCreate(Sender: TObject)这个事件里面执行,还有什么其它事件可以用吗?
启 启明星 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #11 我是说比如什么窗体包括控件全部创建好了,马上执行的是什么?
启 启明星 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-20 #12 这个问题,我把edGzfs.Text=''放入Tgzcp.FormCreate(Sender: TObject)就没问题, 可是只要是自定义过程的,在Tgzcp.FormCreate(Sender: TObject)里面调用, 就会出错,为什么?自定义过程他告诉我必须要指定窗体,也就是gzcp.edgzfs.text
这个问题,我把edGzfs.Text=''放入Tgzcp.FormCreate(Sender: TObject)就没问题, 可是只要是自定义过程的,在Tgzcp.FormCreate(Sender: TObject)里面调用, 就会出错,为什么?自定义过程他告诉我必须要指定窗体,也就是gzcp.edgzfs.text