
vb在调用模块里public声明的子程序(sub)时如何将调用子程序的代码所在的窗体代入?
例如我想写一个publicsub让一个form的backcolor=vbblack,然后把这个子程序放在一个模块里,但是我不知道是哪个form里的代码调用的子程序也就不知...
例如我想写一个public sub 让一个form的backcolor=vbblack,然后把这个子程序放在一个模块里,但是我不知道是哪个form里的代码调用的子程序也就不知道该把那个form变黑,请问可以通过什么方法知道是哪个form调用的子程序吗?
展开
1个回答
展开全部
首先我觉得你可能想多了,比如From1调用From2,想让From2的backcolor=vbblack,你可在调用前直接设置即可,如下:
From2.Backcolor=VbBlack
From2.Show 1
这样就能在打开 From2 时,Backcolor就设置好了,根本不需要什么子程序...
再一个想要知道是那个From调用的,你只要设置一个全局变量,在调用前把调用的窗口写入即可啊。同上面的:
设置全局变量
Dim callname as string
....
子程序里:
callname = "From1"
From2.Backcolor=VbBlack
From2.Show 1
......
在打开的From2,只要显示callname就知道是哪个from调用的了啊。
From2.Backcolor=VbBlack
From2.Show 1
这样就能在打开 From2 时,Backcolor就设置好了,根本不需要什么子程序...
再一个想要知道是那个From调用的,你只要设置一个全局变量,在调用前把调用的窗口写入即可啊。同上面的:
设置全局变量
Dim callname as string
....
子程序里:
callname = "From1"
From2.Backcolor=VbBlack
From2.Show 1
......
在打开的From2,只要显示callname就知道是哪个from调用的了啊。
更多追问追答
追问
我的程序不是那么简单的……只是举个例子……就是做了一个碰撞的判定,但是可能在每个form里都会用到判定,所以想把判定写为一个public函数,但是这个判定涉及到单个form内的控件的操作,所以我需要知道是哪个form调用的函数……我应该不能通过一个string.command来操作……
追答
多个调用,那你设置多个变量好了,那个变量有变化,执行对应的好了啊。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询