主题:表单传递参数问题,请教!
绝缘子2009
[专家分:50] 发布于 2009-10-16 11:05:00
现在有A.B两个表单,在B表单的CANMAND1的CILK中打开XX表,并把XX表的3个字段内容分别赋与
A表单的3个TEXT控件中,请问改如何做?需要设置A表单为全局变量吗?具体该怎么做?
最后更新于:2009-10-20 10:24:00
回复列表 (共12个回复)
沙发
sywzs [专家分:5650] 发布于 2009-10-16 11:43:00
B表单的 COMMAND1 的 CILCK 代码
DO FORM A表单 NAME A表单 WITH THISFORM.TEXT1.TEXT,THISFORM.TEXT21.TEXT,THISFORM.TEXT3.TEXT
A表单的 INIT 代码
PARA TXT1,TXT2,TXT3 &&这三个变量就是传递过来的B表单的三个TEXT控件的值。
板凳
绝缘子2009 [专家分:50] 发布于 2009-10-16 17:34:00
DO FORM A表单 NAME A表单 WITH THISFORM.TEXT1.TEXT,THISFORM.TEXT21.TEXT,THISFORM.TEXT3.TEXT
提示:不能识别的成员 TXET1
还有需要说明下,A表单是顶层表单,B表单在A表单下运行(在顶层表单中)
我之前的代码是这样的:
B表单的COMMAND1 的 CILCK 代码
PUBLIC aset_F,bset_F,cset_F
aset_F=包装清单.产品名称a
bset_F=包装清单.组件名称a
cset_F=包装清单.清单图号a
主表单.text1.Value=aset_F
主表单.text2.Value=bset_F
主表单.text3.Value=cset_F
主表单.text1.backcolor=RGB(0,255,128)
主表单.text2.backcolor=RGB(0,255,128)
主表单.text3.backcolor=RGB(0,255,128)
主表单.text1.Forecolor=RGB(0,0,0)
主表单.text2.Forecolor=RGB(0,0,0)
主表单.text3.Forecolor=RGB(0,0,0)
主表单.Refresh
A表单就是(主表单),我在连编之前这段代码能用,在连编之后提示:找不到对象 主表单?请问我的问题出在哪里?
3 楼
绝缘子2009 [专家分:50] 发布于 2009-10-16 17:38:00
夕阳无限近黄昏,光芒依旧映乾坤;
遥望大地霞光处,笑洒余辉伴路人。
嘿嘿,sywzs老师写的很好!祝您身体健康!!
4 楼
sywzs [专家分:5650] 发布于 2009-10-17 05:01:00
绝缘子2009
[quote]提示:不能识别的成员 TXET1
[/quote]
打字的时候打错了,应该是 TEXT1。
另外,子表单向主表单传递数据,最好定义全局变量。
5 楼
lbscyb [专家分:4780] 发布于 2009-10-19 00:36:00
在A表的INIT事件中分别设置3个TEXT控件就可以了,根本就就不需要传递参数---你的XX表只要没关闭就行:
with this
.text1.value = xx.??
.text2.value = xx.??
.text3.value = xx.??
endwith
6 楼
绝缘子2009 [专家分:50] 发布于 2009-10-19 17:49:00
[quote]绝缘子2009
[quote]提示:不能识别的成员 TXET1
[/quote]
打字的时候打错了,应该是 TEXT1。
另外,子表单向主表单传递数据,最好定义全局变量。[/quote]
我现在就是不知道怎么设置全局变量,设置哪个?表单吗?
我不知道该怎么做,请老师指点下!!
7 楼
sywzs [专家分:5650] 发布于 2009-10-20 06:34:00
可以在主表单的 Load 事件中加入
Public TXT1,TXT2,TXT3
8 楼
绝缘子2009 [专家分:50] 发布于 2009-10-20 10:25:00
sywzs 老师你看下我截的图,按您给的方法做的!
9 楼
sywzs [专家分:5650] 发布于 2009-10-20 12:26:00
从程序错误对话框看,文本框控件 TEXT1 好像不在当前表单中。
你好像把主表单与子表单的关系弄反了,子表单不应该调用主表单。把程序传给我,帮你分析一下。
10 楼
Ilikefox [专家分:5770] 发布于 2009-10-20 14:07:00
现在有A.B两个表单,A表单是顶层表单,B表单在A表单下运行(在顶层表单中)。在B表单的CANMAND1的CILK中打开XX表,并把XX表的3个字段内容分别赋与A表单的3个TEXT控件中,请问改如何做?
如果一开始就这样问,要少走很多弯路。呵呵
这问题简单,假设A表单(文件名:主表单.SCX),A表单的3个TEXT控件是TEXT1、TEXT2、TEXT3。
假设开始A表单的启动方式就是命令: DO FORM 主表单.SCX
则B表单的CANMAND1的CILCK:
主表单.TEXT1=字段1
主表单.TEXT2=字段2
主表单.TEXT3=字段3
我来回复