|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
数据库技术
→
『 VFP论坛 』
→ 如何获取表单的内存变量名(表单对象变量的名称)?
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
3409
人关注过本帖
标题:
如何获取表单的内存变量名(表单对象变量的名称)?
取消只看楼主
加入收藏
xvfp
等 级:
论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
结帖率:
100%
楼主
收藏
已结贴
√
问题点数:20 回复次数:5
如何获取表单的内存变量名(表单对象变量的名称)?
例如:
一个表单的文件名为abc.scx;
do form abc后,就自动产生了该表单的内存变量名abc;
该表单上有一个按钮,按下后,需要获取这个内存变量名,我找不到该用哪条指令或函数。
注:不是取表单的name属性。
搜索更多相关主题的帖子:
内存
如何
2011-08-06 09:38
举报帖子
使用道具
赠送鲜花
xvfp
等 级:
论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
第
2
楼
收藏
得分:0
回应Tony:
对于表单中的控件,完全可以用这些控件的name属性去调用它们。但是,表单则不同:
1.表单的name可以在运行时、用程序去任意修改。如果用这个name去调用表单中的其他控件会报错,因为屏幕上可以同时存在多个表单、且它们的name属性可以相同。
2.表单在运行时,会产生这个表单唯一的内存变量名,且运行后不可更改。用这个变量名可以调用表单上的控件。屏幕上可以同时存在多个表单、且它们的变量名都不相同。
我问的是:
表单运行后,此表单上的一个控件需要取得此表单【唯一的内存变量名】。(尽管在编程时,我知道它的名字,就像1楼的abc,可是如何用程序去取这个变量,得到其内容为abc?)
2011-08-06 12:33
举报帖子
使用道具
赠送鲜花
xvfp
等 级:
论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
第
3
楼
收藏
得分:0
以下是引用
TonyDeng
在2011-8-6 13:21:24的发言:
你用MESSAGEBOX(ThisForm.Name)看看是不是"abc"?
不是的。
用vfp的表单设计器设计一个表单,默认name属性为form1,但在设计时,可以改成xyz;退出设计器时,会要求存盘,且可以取个名字叫abc;此时可以在硬盘上看到两个文件:abc.scx和abc.sct
do form abc后,MESSAGEBOX(ThisForm.Name),显示xyz,而内存中有一个O型变量abc。此时在命令窗口:
?可以执行(command1为这个表单上的一个按钮)
?不可以执行,报错。
我问的是:在命令窗口用什么指令或函数,找出屏幕上这个正在运行的表单的O型变量?这个指令或函数能告诉我,这个O型变量叫abc,我就可以用类似的指令去调用表单中的控件。
2011-08-06 13:53
举报帖子
使用道具
赠送鲜花
xvfp
等 级:
论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
第
4
楼
收藏
得分:0
10楼:“在程序内存中,VFP以xyz为对象依据,abc是没用的,它只是从磁盘中提取表单文件时使用的,映射回xyz。”不对。且正相反,xyz是没用的、abc是此表单容器的名字,可以用等等指令。
14楼已做过实验,发现了我同样的问题。请各位在vfp中实验一下,并
请各位读清楚我的问题:用指令或函数找出表单的O型变量
2011-08-06 23:40
举报帖子
使用道具
赠送鲜花
xvfp
等 级:
论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
第
5
楼
收藏
得分:0
回楼上:你知道我在找什么,你的方法目前可行:
cObjName=SYS(1271, thisform)
cObjName=SUBSTR(cObjName,1,AT('.scx',cObjName)-1)
DO WHILE AT('\',cObjName)>0
cObjName=SUBSTR(cObjName,AT('\',cObjName)+1)
ENDDO
?cObjName
(显示abc)
如果没有更好的答案,你独得20分。
但是,应用系统编译后,安装到用户电脑上的exe文件恐怕不能运行了吧?因为用户电脑上没有abc.scx文件。
或许还有更好的答案...等待中
2011-08-07 07:20
举报帖子
使用道具
赠送鲜花
xvfp
等 级:
论坛游民
帖 子:34
专家分:24
注 册:2011-4-13
第
6
楼
收藏
得分:0
回:
楼主,其实不用费力用指令或函数找出表单的O型变量,就可以用等等指令。
我在写控件的类文件。我仅知道,未来这个控件会放置于表单上,且要读取表单的O型变量名;我不可能知道未来的表单名是什么。
为了简化问题,便于坛子里的狐友快速理解,我才举例要找出abc。
另外,此控件也不能用this.parent, thisform等方式访问它所在的表单,因为它要访问屏幕上同时打开的其它表单(抱歉,不再更多解释,全写出来太费劲了)。
2011-08-07 08:50
举报帖子
使用道具
赠送鲜花
6
1/1页
1
快速回复:
如何获取表单的内存变量名(表单对象变量的名称)?
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.030565 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved