。net怎么判断窗体是否打开

pjwanglin 2011-07-13 04:02:39
我想加入这个窗体打开了就直接传参数不让他在重新打开一个。
...全文
125 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
jbo126 2011-07-13
  • 打赏
  • 举报
回复
唉,真是五花八门啊,先说说你的应用环境吧,或者说说你对打开的理解!你这个地方的打开是创建实例的意思呢?还是显示界面?我总是认为是前者,因为如果是后者,传递参数好像和显示界面与否没关系!
Tragedy 2011-07-13
  • 打赏
  • 举报
回复
可以查看窗体的Activate()来确定
lovetsfuer 2011-07-13
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 mjp1234airen4385 的回复:]
可以使用全局变量。
public static MyForm myform = null;

void ini()
{
myform = new MyForm();
}
...
if(myform != null)...
[/Quote]
还是这个简单容易理解
chenwei9120 2011-07-13
  • 打赏
  • 举报
回复
创建一个hashTable,用来维护所有打开的窗体,每创建一个窗体,先看hashTable里是否存在,存在拿来直接用就可以了。
其实可以写一个工厂类,把这个过程写成一个函数
warwcdddd 2011-07-13
  • 打赏
  • 举报
回复
学习学习
ErrorCode1987 2011-07-13
  • 打赏
  • 举报
回复
Application.OpenForms["formname"]
liguo9860 2011-07-13
  • 打赏
  • 举报
回复
使用单例创建这个窗体
pjwanglin 2011-07-13
  • 打赏
  • 举报
回复
谢谢大家
pjwanglin 2011-07-13
  • 打赏
  • 举报
回复
谢谢大家
mjp1234airen4385 2011-07-13
  • 打赏
  • 举报
回复
可以使用全局变量。
public static MyForm myform = null;

void ini()
{
myform = new MyForm();
}
...
if(myform != null)...
636f6c696e 2011-07-13
  • 打赏
  • 举报
回复
用mutex实现单实例运行~
http://blog.csdn.net/zhengzhichen/article/details/3721740
TimZhuFaith 2011-07-13
  • 打赏
  • 举报
回复
FindWindow 找到就不再打开。。。
pjwanglin 2011-07-13
  • 打赏
  • 举报
回复
我没有用MDI
itliyi 2011-07-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bin_520_yan 的回复:]
C# code


public Form IsExist(string childFrmName)
{
foreach (Form childFrm in this.MdiChildren)
{
if (childFrm.Name == childFrmName)
……
[/Quote]正解
wtnu200 2011-07-13
  • 打赏
  • 举报
回复
showdialog
isjoe 2011-07-13
  • 打赏
  • 举报
回复
这么确定是人家是MDI吗?
PSSonyXbox 2011-07-13
  • 打赏
  • 举报
回复
顶 1楼
DataBox-MDX 2011-07-13
  • 打赏
  • 举报
回复

public Form IsExist(string childFrmName)
{
foreach (Form childFrm in this.MdiChildren)
{
if (childFrm.Name == childFrmName)
{
childFrm.Activate();
return childFrm;
}
}
return null;
}


循环遍历主窗体,如果存在说明隐藏了,那么就激活它,如果不存在就创建它

110,538

社区成员

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

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

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