| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1188 人关注过本帖
标题:从一个表单打开另一个表单成功,但是菜单加载不了
只看楼主 加入收藏
zhaobbc
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-7-12
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
从一个表单打开另一个表单成功,但是菜单加载不了
我创建了两个表单,分别A和B;
创建了菜单a,
设置B为顶层表单,在其init事件输入如下代码:do  a.mpr with this
单独执行表单B,菜单a加载成功;
但是在表单A中一个按钮的click事件:do B
执行表单A后,B表单会打开,但是菜单出不来
各位大神,这是什么原因,怎么可以让菜单出来
我是小白,刚学习
2016-08-16 16:38
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
do  a.mpr with this,.t.
图片附件: 游客没有浏览图片的权限,请 登录注册


坚守VFP最后的阵地
2016-08-16 18:24
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
传上来看一看
2016-08-16 20:54
zhaobbc
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-7-12
收藏
得分:0 
回复 楼主 zhaobbc
已经设置了顶层表单
vvv.rar (14.54 KB)
2016-08-17 09:45
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:20 
1、修改 main.prg 为
PUBLIC gcFilePath,glSysLogin
*设置路径
*************************************************
gcFilePath=LEFT(SYS(16),RAT("\",SYS(16)))   &&捕捉当前运行的程序文件的位置和设置路径
SET DEFA TO (gcFilePath)
Do Form forms\登录.scx
Read Event
IF glSysLogin=.t.
   Do Form forms\主表单.scx
   READ EVENTS
ENDIF
CLEAR ALL
CLOSE ALL
RELEASE ALL
2、修改表单,登录.SCX
*1.在 destroy 中,写
clear events

*2.在 command1.click ,修改为
*PUBLIC a,b,c
*a=SYS(16)
*b=rat('\',a)
*c=left(a,b)
*?c
*SET PATH TO &c

Select 管理人员信息表
t2=Alltrim(Thisform.text2.Value)
t1=Alltrim(Thisform.text1.Value)
glSysLogin=.f.

Locate For 用户名=t2
If Found()
    If Alltrim(密码)==t1
        glSysLogin=.t.
*        DO FORM d:\vvv\forms\主表单.scx
*        DO FORM forms\主表单.scx
        thisform.Release
    Else
        Messagebox("密码错误",14,"提示")
    Endif
Else
    Messagebox("账号不存在!",14,"提示")
Endif

3、修改表单 主表单.scx
*1.在 destroy 中,写
clear events
*2.在 INIT 中,修改为
*Do d:\vvv\主菜单.mpr  With This
Do 主菜单.mpr  With This,.t.
With Thisform.Image1
    .Top=This.Top
    .Left=This.Left
    .Height=This.Height
    .Width=This.Width
Endwith
2016-08-17 11:15
zhaobbc
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-7-12
收藏
得分:0 
回复 5楼 mywisdom88
大神,问题解决了,谢谢!!!
为什么直接执行表单就不行呢?另外表单上的image没有随表单一样最大化是什么问题啊。
2016-08-17 11:59
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
以下是引用zhaobbc在2016-8-17 11:59:31的发言:

大神,问题解决了,谢谢!!!
为什么直接执行表单就不行呢?另外表单上的image没有随表单一样最大化是什么问题啊。

我这里就,直接运行是可以的。
最大话的变化,在你主表单的 resize 中,加上
With Thisform.Image1
    .Top=This.Top
    .Left=This.Left
    .Height=This.Height
    .Width=This.Width
Endwith
2016-08-17 13:32
zhaobbc
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-7-12
收藏
得分:0 
回复 7楼 mywisdom88
我意思是直接在登录表单登录按钮do form 主表单;然而主表单运行时不加载菜单。
我在主表单的resize中加入了调节图片的代码
我设置主表单执行是就最大化,
问题是主表单执行是最大化,但是图片只调节了top、left,宽和高是表单一开始最小化时的宽和高,
图片附件: 游客没有浏览图片的权限,请 登录注册
2016-08-17 15:06
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
以下是引用zhaobbc在2016-8-17 15:06:07的发言:

我意思是直接在登录表单登录按钮do form 主表单;然而主表单运行时不加载菜单。
我在主表单的resize中加入了调节图片的代码
我设置主表单执行是就最大化,
问题是主表单执行是最大化,但是图片只调节了top、left,宽和高是表单一开始最小化时的宽和高,

在 resize 中,加1句
thisform.image1.Stretch = 2 &&变比填充
其实,用 image 来做界面底色,不好控制的。
虽然能达到,图片随大小满屏,但图片会变形失真的。你可以查查,这个问题,很多讨论的。
有的人直接用 表单的 picture 设置底图片,这样不失真,但又有个问题,图片不能大小自动变化,有的人选择足够大的图片,比如用 4000*3000 的大图片,但这样会导致读取大图片时,费内存,同时,表单变小时,只显示图片中的某部分,不是显示全图。有人选项小图片,如规则的瓷砖图片,大小不影响,但这样的图片内容有限制,一般不能采用全景图片
2016-08-17 16:18
快速回复:从一个表单打开另一个表单成功,但是菜单加载不了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032973 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved