| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦   
共有 747 人关注过本帖
标题:如何判斷一個Form已經創建
收藏  订阅  推荐  打印
gofie
Rank: 1
等级:新手上路
帖子:7
积分:176
注册:2008-7-31
如何判斷一個Form已經創建

剛用C#,請問一下大家,如何判斷程序的某個窗體是否已經實例化了,如果實例化了就show出就可以了。沒有的話就new。

        if 怎樣?
            {
            Form1 f=new Form1();
            f.Show();
            }
            else
            {
                f.show();
            }
2008-7-31 16:53
xyq701830
Rank: 3Rank: 3
来自:浙江
等级:中级会员
威望:2
帖子:232
积分:2871
注册:2008-6-24

实例化就要用到名.比如Form myForm = new Form();
myForm就是名,如果说你myForm没有出来的话就说明没有实例化.
就要实例化才能用myForm
不然是用不了的.

菜猪猪``
2008-7-31 17:16
gofie
Rank: 1
等级:新手上路
帖子:7
积分:176
注册:2008-7-31

我打開的時候當然是實例化了的。
button1有下面代碼
{
Form myForm = new Form();
     myForm.show();
}
我在窗體上又把他
myForm.hide;
所以當我在單擊button1時,不用再去實例化myForm,而是show出myForm。
2008-8-1 08:18
peach5460
Rank: 3Rank: 3
来自:武汉
等级:中级会员
帖子:382
积分:4150
注册:2008-1-28

应该可以判断这个form实例化没

如果写错了...不要愤青...
欢迎交流peach5460@gmail.com

QQ Group:61505403
2008-8-1 08:20
xyq701830
Rank: 3Rank: 3
来自:浙江
等级:中级会员
威望:2
帖子:232
积分:2871
注册:2008-6-24

那么你应该用全局变量来实例化这个窗体因为你定义的时候这个实例化只作用在button1里面.

菜猪猪``
2008-8-1 08:24
gofie
Rank: 1
等级:新手上路
帖子:7
积分:176
注册:2008-7-31

用全局變量的方法我試過,好像不行。
高手還有其他方法嗎?
2008-8-1 15:06
xyq701830
Rank: 3Rank: 3
来自:浙江
等级:中级会员
威望:2
帖子:232
积分:2871
注册:2008-6-24

你全局是定义在哪里的``

菜猪猪``
2008-8-1 15:27
Jacky_Athena
Rank: 1
等级:新手上路
帖子:20
积分:354
注册:2008-4-7

mdi 调用子窗体例
            Form activeChild = this.ActiveMdiChild;
            while (activeChild != null)
            {
                activeChild.Close();
                activeChild = this.ActiveMdiChild;
            }
            frmUserLogin UserLogin = new frmUserLogin();
            UserLogin.MdiParent = this;
            UserLogin.Show();
2008-8-1 15:32
gofie
Rank: 1
等级:新手上路
帖子:7
积分:176
注册:2008-7-31

private void menuItem2_Click(object sender, System.EventArgs e)
{
   Form1 f;
if (Form1_s!="Y")   
//Form1_s為全局變量 如果Form1_s為"Y"代表f已經實例化過了
{
    f=new Form1();
    f.Show();
    Form1_s="Y";
}
else
{
    f.show();   //這裡有問題,不認識f
}
}

TO Jacky_Athena
 子窗體的調用,會適用這個嗎?
2008-8-1 16:10
Jacky_Athena
Rank: 1
等级:新手上路
帖子:20
积分:354
注册:2008-4-7

InitializeComponent();
用判断来调用

[ 本帖最后由 Jacky_Athena 于 2008-8-1 16:54 编辑 ]
2008-8-1 16:15
共有 746 人关注过本帖
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.053935 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved