在当前窗体怎么关掉另一个窗体?

akme02 2011-06-21 11:03:41
有两个窗体 frmMainMenu、 frmStatus ,frmStatus 的 TopMost 属性为 true;
现在在frmMainMenu窗体中怎么用代码关掉frmStatus ?
...全文
232 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
exercisebook 2013-01-06
  • 打赏
  • 举报
回复
对呀,我也要这种效果啊,请问楼主出来了没啊 ????
shighui 2011-06-21
  • 打赏
  • 举报
回复
引用 12 楼 akme02 的回复:
引用 11 楼 ohkuy 的回复:
C# code

//看你心急,写一个参考吧
//Form1有一个按钮,点击就显示Form2,显示3秒就关闭Form2

//Form1中button事件
System.Windows.Forms.Timer timer=new System.Windows.Forms.Timer();
int times = 0;
Form2 fr……
……
若是Form2已经为显示状态呢? 你这种不行额


例子不是显示为TopMost之后再关闭的么???
还显示了一段时间,
你又没说具体需求只能这样写了,
又没有万能的代码,
你自己改一下就行了
你只要记住一点,用哪个实例打开的,就用哪个实例关闭,
你可以在你想要关闭的地方关闭这个窗体

引用 12 楼 akme02 的回复:
引用 11 楼 ohkuy 的回复:
C# code

//看你心急,写一个参考吧
//Form1有一个按钮,点击就显示Form2,显示3秒就关闭Form2

//Form1中button事件
System.Windows.Forms.Timer timer=new System.Windows.Forms.Timer();
int times = 0;
Form2 fr……
……
若是Form2已经为显示状态呢? 你这种不行额


例子不是显示为TopMost之后再关闭的么???
还显示了一段时间,
你又没说具体需求只能这样写了,
又没有万能的代码,
你自己改一下就行了
你只要记住一点,用哪个实例打开的,就用哪个实例关闭,
你可以在你想要关闭的地方关闭这个窗体

引用 12 楼 akme02 的回复:
引用 11 楼 ohkuy 的回复:
C# code

//看你心急,写一个参考吧
//Form1有一个按钮,点击就显示Form2,显示3秒就关闭Form2

//Form1中button事件
System.Windows.Forms.Timer timer=new System.Windows.Forms.Timer();
int times = 0;
Form2 fr……
……
若是Form2已经为显示状态呢? 你这种不行额


例子不是显示为TopMost之后再关闭的么???
还显示了一段时间,
你又没说具体需求只能这样写了,
又没有万能的代码,
你自己改一下就行了
你只要记住一点,用哪个实例打开的,就用哪个实例关闭,
你可以在你想要关闭的地方关闭这个窗体

引用 12 楼 akme02 的回复:
引用 11 楼 ohkuy 的回复:
C# code

//看你心急,写一个参考吧
//Form1有一个按钮,点击就显示Form2,显示3秒就关闭Form2

//Form1中button事件
System.Windows.Forms.Timer timer=new System.Windows.Forms.Timer();
int times = 0;
Form2 fr……
……
若是Form2已经为显示状态呢? 你这种不行额


例子不是显示为TopMost之后再关闭的么???
还显示了一段时间,
你又没说具体需求只能这样写了,
又没有万能的代码,
你自己改一下就行了
你只要记住一点,用哪个实例打开的,就用哪个实例关闭,
你可以在你想要关闭的地方关闭这个窗体
ohkuy 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 akme02 的回复:]
引用 11 楼 ohkuy 的回复:
C# code

//看你心急,写一个参考吧
//Form1有一个按钮,点击就显示Form2,显示3秒就关闭Form2

//Form1中button事件
System.Windows.Forms.Timer timer=new System.Windows.Forms.Timer();
int times = 0;
Form2 fr……
……
若是Form2已经为显示状态呢? 你这种不行额
[/Quote]
例子不是显示为TopMost之后再关闭的么???
还显示了一段时间,
你又没说具体需求只能这样写了,
又没有万能的代码,
你自己改一下就行了
你只要记住一点,用哪个实例打开的,就用哪个实例关闭,
你可以在你想要关闭的地方关闭这个窗体
  • 打赏
  • 举报
回复
两种方法:
1. 把frmStatus的对象传给frmMainMenu,然后在frmMainMenu里面直接frmStatus.close
2. 单例frmStatus.
akme02 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 ohkuy 的回复:]
C# code

//看你心急,写一个参考吧
//Form1有一个按钮,点击就显示Form2,显示3秒就关闭Form2

//Form1中button事件
System.Windows.Forms.Timer timer=new System.Windows.Forms.Timer();
int times = 0;
Form2 fr……
[/Quote]
若是Form2已经为显示状态呢? 你这种不行额
ohkuy 2011-06-21
  • 打赏
  • 举报
回复

//看你心急,写一个参考吧
//Form1有一个按钮,点击就显示Form2,显示3秒就关闭Form2

//Form1中button事件
System.Windows.Forms.Timer timer=new System.Windows.Forms.Timer();
int times = 0;
Form2 frm = null;
private void button1_Click_1(object sender, EventArgs e)
{
frm = new Form2();
frm.WindowState = FormWindowState.Maximized;
frm.TopMost = true;
frm.Show();
timer.Enabled = true;
timer.Interval = 1000;
timer.Start();
timer.Tick += new EventHandler(timer_Tick);
}

void timer_Tick(object sender, EventArgs e)
{
times++;
if (times == 3)
{
frm.Close(); //关闭就这一句而已
timer.Stop();
}

}
akme02 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 jshzp 的回复:]
引用 3 楼 bdmh 的回复:
main窗体中保留那些窗体的实例,然后直接close

原因和方法都在这儿了!楼主别再听别人误导了,验证后赶紧结贴吧
[/Quote]
纠结 请你也说清楚点啊 可以写出来不?
jshzp 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bdmh 的回复:]
main窗体中保留那些窗体的实例,然后直接close
[/Quote]
原因和方法都在这儿了!楼主别再听别人误导了,验证后赶紧结贴吧
druigang 2011-06-21
  • 打赏
  • 举报
回复
你在frmMainMenu窗体中创建一个静态公共的的frmStatus 窗体变量,
然后你可以在需要加载的时候创建实例,
在需要关闭的时候直接调用这个实例close方法
akme02 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lovesongforever 的回复:]
把另外一个窗体做成单例, 需要的时候直接打开和关闭。
[/Quote]
请问可以举个例不?
garfieldzf 2011-06-21
  • 打赏
  • 举报
回复
把另外一个窗体做成单例, 需要的时候直接打开和关闭。
akme02 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bdmh 的回复:]
main窗体中保留那些窗体的实例,然后直接close
[/Quote]
请问可以说清楚点不?
akme02 2011-06-21
  • 打赏
  • 举报
回复
可以操作 这个完全不影响 你可以试试 一楼的那个肯定不行 不然我也不会问了
bdmh 2011-06-21
  • 打赏
  • 举报
回复
main窗体中保留那些窗体的实例,然后直接close
daifei4451 2011-06-21
  • 打赏
  • 举报
回复
frmStatus 的 TopMost 属性为 true

你还能操作frmMainMenu吗?
lihanbing 2011-06-21
  • 打赏
  • 举报
回复
frmStatus.Close()???

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧