关于在DELPHI中FOR循环语句的使用问题

在DELPHI中用到FOR循环来解决问题的可以说是家常菜,可我用了这么久今天才发现存在一个规则,对这个规则我总结出在DELPHI中使用FOR分为两类:一是对数据库读取数据时用到FOR来实现对记录的循环,这种循环一定要记得在FOR的区域里加上NEXT,否则就会造成死区,程序运行后就永远运行不完了;另一类是自己设的一些变量范围,在这些变量范围里面用到FOR来实现循环,在这个区域里不需要加NEXT,若加了的话,永远只实行一次,并不循环.两类代码如下:

1:
ADOQ.CLOSE;
ADOQ.SQL.CLEAR;
ADOQ.SQL.TEXT:='SELECT  FROM  ';
ADOQ.OPEN;
FOR J:=0 TO ADOQ.RECORDCOUNT-1 DO
BEGIN
     NEXT;
END;

2
FOR J:=0 TO 8 DO
BEGIN

END;

 

 

阅读更多

delphi循环语句和条件语句的使用问题

04-27

var a,b,c,d,e,f:string;rnrnbeginrna:=edit1.text;rnb:=edit2.text;rnc:=edit3.text;rnd:=edit4.text;rne:=edit5.text;rnf:=edit6.text;rnrnif (a='')or(b='')or(c='')or (d='')or (e='')or (f='') then showmessage('信息不完整') //如果a,b,c,d,e,f有一个为空,则显示提醒rnrnelsernrntable1.Open;//数据表table打开rntable1.Insert;//数据表处于插入状态rnedit1.SetFocus;rntablename.value:=edit1.text; 将edit1下的内容添加到数据表name单元下rntablepassword.Value:=edit2.Text;rntablepop3.Value:=edit3.Text;rntablepop3port.Value:=edit4.Text;rntalbesmtp.Value:=edit5.Text;rntablesmtpport.Value:=edit6.Text;rntableEmail.Value:=edit7.Text;rnend;rnrnrn现在用上面的代码,可以执行过去,也可以实现显示“信息不完整”提醒窗口,但是rnif (a='')or(b='')or(c='')or (d='')or (e='')or (f='') then showmessage('信息不完整') elsern这句代码的意思是:如果a,b,c,d,e,f有一个为空,则显示提醒,它的else的意思就可以理解为如果a,b,c,d,e,f中有一个有内容不为空,就执行else下面的代码!rnrn[color=#0000FF]我现在想让它作出判断后,判断出有一个内容为话的显示提醒信息后就不再往下执行了,如果a,b,c,d,e,f所有的内容都不为空的话,则执行else下的内容,这段代码应怎么写呢?[/color]rnrnrnrn而且rnvar a,b,c,d,e,f:string;rnbeginrna:=edit1.text;rnb:=edit2.text;rnc:=edit3.text;rnd:=edit4.text;rne:=edit5.text;rnf:=edit6.text;rnif (a='')or(b='')or(c='')or (d='')or (e='')or (f='') then showmessage('信息不完整')rn[color=#333399]这段代码可不可以用for...do...之类的循环语句+条件语句来表达啊,这样子写的话,代码太多了,太麻烦了![/color]rnrn谢谢各位大哥大姐!

没有更多推荐了,返回首页