检查子窗体中是否已经含有指定类型的窗体,如果有,则激活,如果没有则返回false!
2008-10-15 15:23
323 查看
在微软中文技术论坛中找到的一个防止重复打开窗体的函数,原出处为:
http://forums.microsoft.com/china/ShowPost.aspx?PostID=3872295&SiteID=15
原文转载如下:
以下是我以前写的一个方法,用来判断某一个类型的窗体是否已经有一个实例作为MDI子窗体显示了。因为通常MDI子窗体都是直接或间接从Form类型派生,而且每个子窗体一般都是不同的类型,因此这个函数可以达到效果。
private void SetupMenuItem_Click(object sender, EventArgs e)
{
Setting f = new Setting();
f.ShowDialog();
}
private bool CheckExistsForms(Type formType)
{
foreach (Form f in this.MdiChildren)
{
if (f.GetType().Equals(formType))
{
if (FormWindowState.Minimized == f.WindowState)
f.WindowState = FormWindowState.Normal;
f.Activate();
return true;
}
}
/*
这里其实也可以利用formType,通过反射创建出窗体并显示
不过当前只是返回false而已
*/
return false;
}
http://forums.microsoft.com/china/ShowPost.aspx?PostID=3872295&SiteID=15
原文转载如下:
以下是我以前写的一个方法,用来判断某一个类型的窗体是否已经有一个实例作为MDI子窗体显示了。因为通常MDI子窗体都是直接或间接从Form类型派生,而且每个子窗体一般都是不同的类型,因此这个函数可以达到效果。
private void SetupMenuItem_Click(object sender, EventArgs e)
{
Setting f = new Setting();
f.ShowDialog();
}
private bool CheckExistsForms(Type formType)
{
foreach (Form f in this.MdiChildren)
{
if (f.GetType().Equals(formType))
{
if (FormWindowState.Minimized == f.WindowState)
f.WindowState = FormWindowState.Normal;
f.Activate();
return true;
}
}
/*
这里其实也可以利用formType,通过反射创建出窗体并显示
不过当前只是返回false而已
*/
return false;
}
相关文章推荐
- 找到多个与名为“HOME”的控制器匹配的类型。如果为此请求(“{CONTROLLER}/{ACTION}/{ID}”)提供服务的路由在搜索匹配此请求的控制器时没有指定命名空间,则会发生此情况。如果是这样,请通过调用含有“NAMESPACES”参数的“MAPROUTE”方法的重载来注册此路由。
- 使用history.length判断是否有上一页面,如果没有就返回到指定页面
- 有一个二叉树,现在怀疑它有一个结点有2个父节点,请写出一个函数来判断该二叉树是否存在一个节点含有2个父节点。如果存在,返回true,否则返回false。
- 有一个二叉树,现在怀疑它有一个结点有2个父节点,请写出一个函数来判断该二叉树是否存在一个节点含有2个父节点。如果存在,返回true,否则返回false。
- 判断是否含有中文,包含返回true,不包含返回false
- Oracle PLSQL Demo - 16.弱类型REF游标[没有指定查询类型,已指定返回类型]
- mysql中的判断是否有该条数据 如果有返回1 没有返回0
- 判断窗体是否存在,如果存在就激活
- 判断jquery是否已经加载,如果没有动态加载
- C# 判断窗体是否打开 如果打开激活窗体 两种方法
- 编写一个方法用于验证指定的字符串是否为反转字符,返回true和false。请用递归算法实现
- 如果是作为客户端的HTTP+JSON接口工程,没有JSP等view视图的情况下,使用Jersery框架开发绝对是第一选择。而在基于Spring3 MVC的架构下,对HTTP+JSON的返回类型也有很好
- headers_sent() 函数检查 HTTP 标头是否已被发送以及在哪里被发送。 如果报头已发送,则返回 true,否则返回 false。
- 判断窗体是否存在,如果存在就激活
- jquery 判断元素是否含有这个class,如果没有,进行操作
- C++利用队列(Queue)求解迷宫(Maze)中指定起点和终点间是否有最短路径,如果有的话输出所需步数,如果没有输出
- 编程拾遗:集合类型的函数,返回值,如果没有,就返回默认集合new,或者 default(T)好一些。
- 没有指定返回类型,可能查询不到返回结果
- 【技术】canvas如果指定的点位于当前路径中,则返回 true,否则返回 false
- Oracle PLSQL Demo - 20.弱类型REF游标[没有指定查询类型,也不指定返回类型]