| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1285 人关注过本帖
标题:哈哈,这回是子窗体一闪而过了
取消只看楼主 加入收藏
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
结帖率:91.53%
收藏
已结贴  问题点数:100 回复次数:3 
哈哈,这回是子窗体一闪而过了
直接上代码吧,迷糊了
https://bbs.bccn.net/thread-460213-1-1.html
17楼的代码基础上,加了点东西
程序代码:
CLEAR ALL 
CLOSE PROCEDURES
SET PATH TO "..\MyTools"
SET PROCEDURE TO "MyForm", "MyLogin","otherForm"

PUBLIC gcUserName
Login("gcUserName")
IF !EMPTY(gcUserName)
    Main()
ENDIF 

CLOSE PROCEDURES
CLEAR ALL 
RETURN 

PROCEDURE Main()
    LOCAL loMainForm
    loMainForm = CREATEOBJECT("C_MainForm")
    WITH loMainForm
        .Caption = "主窗体"
        .Width = 600
        .Height = 400
        .AutoCenter = .T.
        .Show
    ENDWITH 
    READ EVENTS
ENDPROC 

DEFINE CLASS C_MainForm AS MyForm
    ShowWindow = 2
    
    ADD OBJECT Label1 AS Label WITH Caption = "欢迎您!" + gcUserName, FontSize = 36, AutoSize = .T.
    ADD OBJECT runOtherForm as commandButton WITH caption="运行另一表单",top=5,autoSize=.t.
    PROCEDURE Arrange
        WITH This.Label1
            .Top = (This.Height - .Height) / 2
            .Left = (This.Width - .Width) / 2
        ENDWITH 
    ENDPROC 
    
    PROCEDURE runOtherForm.click
        runOtherForm1()
    ENDPROC 
    
ENDDEFINE 


程序代码:
&&otherForm.prg
PROCEDURE runOtherForm1
    LOCAL otherForm1
    otherForm1=CREATEOBJECT("m1Form")
    otherForm1.show
    READ EVENTS
ENDPROC 

DEFINE CLASS m1Form as myForm
    &&showWindow=2
    caption="功能模块1窗口"
    width=500
    height=300
    autoCenter=.t.
    &&windowType=1
    
    ADD OBJECT button1 as commandButton WITH caption="返回主表单",top=5,autoSize=.t.
    
    PROCEDURE button1.click
        RELEASE thisform
    ENDPROC 
    
    PROCEDURE Destroy
        MESSAGEBOX("模块1表单销毁了",64,"123")
    ENDPROC
    
ENDDEFINE 


各窗体之间的工作交接流程,还是搞不明白。。。
2015-12-19 22:36
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
程序代码:
PROCEDURE runOtherForm1
    LOCAL otherForm1
    otherForm1=CREATEOBJECT("m1Form")
    otherForm1.show
    &&READ EVENTS
ENDPROC 

DEFINE CLASS m1Form as myForm
    showWindow=1
    caption="功能模块1窗口"
    width=500
    height=300
    autoCenter=.t.
    windowType=1


作为子表单,并且模式,并且不read Events,可以

不作为模式表单运行  还是直接销毁

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-12-19 22:46
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
想点击主窗体上的按钮后,运行一个顶层表单,因为有可能窗体大小超过主窗体

非模式表单,因为有可能需要同时运行主窗体的其他功能

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-12-19 22:58
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
回复 5楼 TonyDeng
我看你的代码  都是local  我也就都local了  没想到还有这么大差别呢

其实就没想到这个  只注意窗体的showWindow和windowType了

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-12-19 23:05
快速回复:哈哈,这回是子窗体一闪而过了
数据加载中...
 
   



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

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