两个初学问题

yiyuan 2002-12-27 01:45:13
1 FOR子句和WHILE子句有什么区别?
2 我在Grid中想加一排复选的标记按钮,并使用变量记录选择情况。我在那个Column的INIT中定义了一个数组。
PUBLIC MYARRAY(50)
THIS.CONTROLSOURCE = 'MYARRAY'
运行倒是可以了。但当我按复选按钮时,提示这个控件是只读的。这是怎么回事?如何实现我的要求?

...全文
30 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yiyuan 2002-12-31
  • 打赏
  • 举报
回复
但第一个就不是这样吧.这个很奇怪.

PUBLIC MYARRAY(50)
THIS.CONTROLSOURCE = MYARRAY && 注意,原来的写法是'MYARRAY',多了引号

SELECT * FROM ABC INTO CURSOR CUST
THIS.RECORDSOURCE = 'CUST' && 要用引号把文件名括起来

一个该用引号,一个不该用,是一个属性.
谭建新 2002-12-28
  • 打赏
  • 举报
回复
属性名一般要用引号,命令一般不用引号
yiyuan 2002-12-28
  • 打赏
  • 举报
回复
OK,问题被我自己解决了.不过,错的太让我郁闷了.
只要写成这样的方法就行.
PUBLIC MYARRAY(50)
THIS.CONTROLSOURCE = MYARRAY && 注意,原来的写法是'MYARRAY',多了引号

这半问题我自己解决了,为结贴,正好再问一个问题:
就是究竟什么时候应该用引号?什么时候不应该用?VFP的引号用法我感觉非常奇怪.
上面的这个是不该用引号的.
但还有一些应该用引号的.如:
SELECT * FROM ABC INTO CURSOR CUST
THIS.RECORDSOURCE = 'CUST' && 要用引号把文件名括起来

另一个要用引号的是SETALL
THIS.SETALL("DYNAMICBACKCOLOR", "IIF(A,RGB(0,0,0),RGB(255,255,255)";
,"COLUMN") && 所有的属性名,值,全部要用引号括起来.

谁可以总结一下,什么时候应该用引号?什么时候不用?
xiolig 2002-12-27
  • 打赏
  • 举报
回复
列的控源似乎只能是字段。
我按你的情况试了一下,发现所有行的值都是数组第一个元素的值,也许Grid不支持用数组作为控源吧!
Grid的RecordType也没有数组这一项!
wangwest 2002-12-27
  • 打赏
  • 举报
回复
ReadOnly = .F. 设置为.T.
yiyuan 2002-12-27
  • 打赏
  • 举报
回复
谢谢xiolig和wht5555,第一个问题明白了。最后一并给分。

第二个问题怎么办?属性没有问题。控件的ReadOnly = .F.
个数20个也不行。
wht5555 2002-12-27
  • 打赏
  • 举报
回复
for是用来在所有的记录中选取符合条件的记录当找到后会纪续向下找。。。
while只找一个不符合的记录就会停止。。。。
chjpeng 2002-12-27
  • 打赏
  • 举报
回复
1>兩者意思差不多,for主要是用來作次數循環,while主要作表達式條件判斷
2>控件屬性設對了嗎?建議先少設几個復選框以供測試
xiolig 2002-12-27
  • 打赏
  • 举报
回复
回答你的第一个问题:
FOR 子句一般为比较所有的记录
WHILE 子句一旦遇到不符合条件的记录就停止比较

2,749

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧