在FoxPro中,如何通过程序(比如在运行时根据不同的条件动态加载)来设置表单(例如 input.scx)的数据环境( 如表 my.dbf ) ?
---------------------------------------------------------------
方法一:
表单属性不动,先设一个表(如temp1.dbf)为表单的数据环境,然后在想设定另一个表(如MY.DBF)为数据环境时,直接
select * from my.dbf into dbf temp1
或
select * from my.dbf into cursor temp1
即可。
方法二:
1、把表单的 DataSession 属性为 2-私有数据工作期.
2、在表单上建一个按钮,此按钮的Click事件:
WITH THISFORM.DataEnvironment
.ADDOBJECT("MyCursor","Cursor")
*.mycursor.Database= SYS(2004)+"samples\data\testdata.dbc"
.MyCursor.CursorSource="MY.dbf"
&&此表必须在当前路径下,如果不在,请写绝对路径
.CloseTables() && 关闭所有的表和与数据环境相关的视图
.OpenTables() && 打开所有的表和与数据环境相关的视图
ENDWITH