在vfp中,用第一个表单设置一个按钮进入第二个表单,在第二个表单中设置一个确定按钮,一个返回第一个表单
当按确定时运行一个.prg程序,按返回时返回第一个表单。为什么在运行程序时看不到确定和返回按钮,而且在运行程序的过程中,不能输入汉字,也不能得到结果。程序a.prg的代码...
当按确定时运行一个.prg程序,按返回时返回第一个表单。为什么在运行程序时看不到确定和返回按钮,而且在运行程序的过程中,不能输入汉字,也不能得到结果。
程序a.prg的代码为
clear
use 学生登记表
input "请输入学生姓名:" to a
locate all for 姓名=a
display
return
确定的click代码为 do a.prg
返回的click代码为 thisform.form2.hide
thisform.form1.show
请大家帮忙看看,谢谢,急! 展开
程序a.prg的代码为
clear
use 学生登记表
input "请输入学生姓名:" to a
locate all for 姓名=a
display
return
确定的click代码为 do a.prg
返回的click代码为 thisform.form2.hide
thisform.form1.show
请大家帮忙看看,谢谢,急! 展开
1个回答
展开全部
你的问题,本来很简单,可是很“难”回答。
① 在windows 中,"windows" 是什么意思呢? 它把所有的交互界面上的 对象(object)都看成一个个的 "window",每一个 object 都有它的 父object,object 们组成树形的结构,原则上不关联的object之间是不可以相互管理的,你试图在 from1 和 from2 之间相互管理(比如 show 或 hide)(当然它是可以实现的,但不是推荐的 编程方法), 也不应用 show 或 hide,而应该用 activate方法来激活下一个窗口(form)。如果你要通过按钮,打开一个formx,执行后返回当前的form,应该把formx 的windowType 置为 modal,它退出后自然回到当前的form。(唉,我说了那么多,也不知有没说明白,嘿嘿)
②a.prg中的 display ,它输出到什么地方呢?按照你的代码,它将输出到调用它的那个form。这样的话,它的display 就把from 覆盖了(并且,你还用了clear ,它clear 了什么地方呢?),你当然就看不到那个位置的按钮了。当然了,你可以在 按钮的 click 事件的最后,用thisform.refresh来重绘form,但是,你的display又被抹掉了。建议你增加一个form来做显示用。
③其实,我没有直接帮你解决问题,但提出了思路,关键是你的相关知识,需要大力加强。
① 在windows 中,"windows" 是什么意思呢? 它把所有的交互界面上的 对象(object)都看成一个个的 "window",每一个 object 都有它的 父object,object 们组成树形的结构,原则上不关联的object之间是不可以相互管理的,你试图在 from1 和 from2 之间相互管理(比如 show 或 hide)(当然它是可以实现的,但不是推荐的 编程方法), 也不应用 show 或 hide,而应该用 activate方法来激活下一个窗口(form)。如果你要通过按钮,打开一个formx,执行后返回当前的form,应该把formx 的windowType 置为 modal,它退出后自然回到当前的form。(唉,我说了那么多,也不知有没说明白,嘿嘿)
②a.prg中的 display ,它输出到什么地方呢?按照你的代码,它将输出到调用它的那个form。这样的话,它的display 就把from 覆盖了(并且,你还用了clear ,它clear 了什么地方呢?),你当然就看不到那个位置的按钮了。当然了,你可以在 按钮的 click 事件的最后,用thisform.refresh来重绘form,但是,你的display又被抹掉了。建议你增加一个form来做显示用。
③其实,我没有直接帮你解决问题,但提出了思路,关键是你的相关知识,需要大力加强。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询