标题:求助 VFP的主窗口作应用程序的主窗口 求助几个问题
只看楼主
taifu945
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:80
帖 子:1545
专家分:3298
注 册:2012-7-6
得分:10 
以下是引用yanling48在2017-8-24 16:21:41的发言:

你说的是用顶层表单取代主窗口吗?
   如果是,要在顶层表单的unload事件加入代码:
                           close all
                           clear events
                           quit
 
   这样可以解决“点右上角的X,出来的是对话框  不能退出VISUAL FOXPRO。”的问题,但是我现在也没找到解决“运行程序的时候总是先闪一下,然后变成我设置的大小。”的问题。
 
但我觉得,如果是多表单程序,建议用传统的方法:
将主窗口最大化,通过菜单调用你的各个表单,用菜单控制退出系统。
 
主程序代码参考:
 set sysmenu off  &&关闭系统菜单
 close all
 release window 常用,表单控件    &&关闭Standard工具栏
 zoom window screen max    &&主窗口最大化
 _SCREEN.controlbox=.f.   &&去掉主窗口中的控制按钮
 _SCREEN.picture="XXX.jpg"   &&设置背景图片
 deactivate window "项目管理器"    &&关闭项目管理器
 do form XXX    &&运行你的登录表单
 do XXX.mpr    &&运行你的编的菜单程序
 read events
 quit
 
关于红字部分,你可以试试这样:
在config.fpw中加一行:SCREEN=OFF,然后,在你设置主窗口大小的后一行加一条命令:_SCREEN.Show。
2017-08-25 12:28
shankeda
Rank: 1
等 级:新手上路
帖 子:30
专家分:5
注 册:2017-7-24
得分:0 
回复 11楼 taifu945
谢谢  这个问题解决了!!
2017-08-25 12:51
shankeda
Rank: 1
等 级:新手上路
帖 子:30
专家分:5
注 册:2017-7-24
得分:0 
回复 10楼 sdta
好吧,我只是想到了这些问题,看看有没有办法解决。
2017-08-25 12:52
yanling48
Rank: 2
等 级:论坛游民
威 望:1
帖 子:25
专家分:33
注 册:2017-8-23
得分:0 
回复 9楼 shankeda
如果是那样的话,就新建个项目,把你所有的表单、数据库、菜单等添加进去。按我之前给你的主程序代码做个主程序,连编项目,编译成EXE文件就可以了。
2017-08-26 14:48
xinjie
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:18
帖 子:257
专家分:501
注 册:2007-8-11
得分:0 
看不下去了。。。误人子弟啊。。。
2017-08-26 14:57
yanling48
Rank: 2
等 级:论坛游民
威 望:1
帖 子:25
专家分:33
注 册:2017-8-23
得分:0 
回复 11楼 taifu945
这个问题困扰我很久了,今天终于解决了,谢谢!
2017-08-26 14:58
xinjie
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:18
帖 子:257
专家分:501
注 册:2007-8-11
得分:0 
Config.FPW 中至少两行:
Screen = Off
Resource = Off

最粗糙的主程序基本应该是这样的:
程序代码:
Set Default To ...
Set Path To ...

Set Console Off
Set Safety Off
Set Status Off
Set Status Bar Off
Set Sysmenu To
Set Notify Off
Set Asserts Off
Set Debug Off
Set Echo Off
.......

On Shutdown MyQuit 

*!* 这里可以是 Splash (俗称“封面”)
*!* 这里可以是个登录界面
*!* 当然,还可以加其他的一些程序必需的乱七八糟的东西

With _Screen As Form
    .WindowState = 2
    .Visible     = .T.
    .Caption     = [XXX]
Endwith

Do MyMenu.mpr
*!* 如果为了UI的美观,可以加一些导航栏啊,工具栏啊,状态栏之类的东东

Read Events

Function MyQuit
    Clear Events
    Close All
    Quit
Endfunc

然后编译成EXE,就OK了。

VFP没落的好啊。。。。


[此贴子已经被作者于2017-8-26 15:21编辑过]

2017-08-26 15:15
shankeda
Rank: 1
等 级:新手上路
帖 子:30
专家分:5
注 册:2017-7-24
得分:0 
回复 17楼 xinjie
大神 弱弱的问一下
程序代码:
Function MyQuit
    Clear Events
    Close All
    Quit
Endfunc

这个是放在主程序里面的吗?
为什么运行到On Shutdown MyQuit 的时候提示


小白一个  正在学习中,见笑了。
2017-08-26 22:20
xinjie
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:18
帖 子:257
专家分:501
注 册:2007-8-11
得分:10 
回复 18楼 shankeda
1 是放在主程序
2 我的错误,抱歉!应该是 On Shutdown Do MyQuit
2017-08-27 10:49
shankeda
Rank: 1
等 级:新手上路
帖 子:30
专家分:5
注 册:2017-7-24
得分:0 
回复 19楼 xinjie
谢谢大神。膜拜……
2017-08-27 11:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-480215-1-1.html




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

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