程序以及窗体运行的唯一性汇总
2006-05-24 13:57
435 查看
经常看到有人讨论程序运行唯一性或者窗体运行的唯一性问题。我之前也写了一些文章,在此把它进行整理汇总。
如果是程序的唯一性问题,我之前的一篇文章已经写得很全面,可以参看。
http://blog.csdn.net/knight94/archive/2006/03/16/625809.aspx
如果是MDI子窗体的话,那么我最近的一篇文章提到的两种方法都不错,可以参看。
http://blog.csdn.net/knight94/archive/2006/05/17/742324.aspx
如果不是MDI子窗体的话,而是一般窗体的话,其实要做到唯一打开的话,其实也是很简单的,需要在窗体中去做一些简单代码即可了。
如下就用一个名叫“frmUniqueForm”窗体类来说明。
首先,需要在此窗体类中,加一个静态窗体类对象,如下:
// Save the current form object
private static frmUniqueForm pUniqueForm = null;
然后在窗体类的构造函数中,去初始化静态对象,如:
pUniqueForm = this;
在窗体类的Closed事件中,去释放当前静态对象,代码如下:
private void frmUniqueForm_Closed(object sender, System.EventArgs e)
{
pUniqueForm = null;
}
最后,要在此窗体类中创建一个静态函数,来打开唯一窗体,具体如下:
public static void ShowUniqueWindow()
{
// Init static form object
if( pUniqueForm == null )
{
// Create new form
new frmUniqueForm();
// Show the form
pUniqueForm.Show();
}
// Set window focus and topmost attributes
pUniqueForm.Focus();
pUniqueForm.TopMost = true;
}
那么在其他地方去打开此窗口就非常简单了,只需调用这个静态函数即可,如下:
frmUniqueForm.ShowUniqueWindow();
如果是程序的唯一性问题,我之前的一篇文章已经写得很全面,可以参看。
http://blog.csdn.net/knight94/archive/2006/03/16/625809.aspx
如果是MDI子窗体的话,那么我最近的一篇文章提到的两种方法都不错,可以参看。
http://blog.csdn.net/knight94/archive/2006/05/17/742324.aspx
如果不是MDI子窗体的话,而是一般窗体的话,其实要做到唯一打开的话,其实也是很简单的,需要在窗体中去做一些简单代码即可了。
如下就用一个名叫“frmUniqueForm”窗体类来说明。
首先,需要在此窗体类中,加一个静态窗体类对象,如下:
// Save the current form object
private static frmUniqueForm pUniqueForm = null;
然后在窗体类的构造函数中,去初始化静态对象,如:
pUniqueForm = this;
在窗体类的Closed事件中,去释放当前静态对象,代码如下:
private void frmUniqueForm_Closed(object sender, System.EventArgs e)
{
pUniqueForm = null;
}
最后,要在此窗体类中创建一个静态函数,来打开唯一窗体,具体如下:
public static void ShowUniqueWindow()
{
// Init static form object
if( pUniqueForm == null )
{
// Create new form
new frmUniqueForm();
// Show the form
pUniqueForm.Show();
}
// Set window focus and topmost attributes
pUniqueForm.Focus();
pUniqueForm.TopMost = true;
}
那么在其他地方去打开此窗口就非常简单了,只需调用这个静态函数即可,如下:
frmUniqueForm.ShowUniqueWindow();
相关文章推荐
- C# Winform程序以及窗体运行的唯一性汇总
- Unity设置发布程序运行时候位置以及窗体大小
- JFinal 2.0 制作可执行WAR包 以及 单独可运行的 程序
- Android:分析app、Process、Task之间的区别,以及获取最近运行的程序(近期任务)与正在运行的程序
- [操作系统基础]程序运行时内存的分区以及作用【转载】
- delphi 程序窗体及控件自适应分辨率(通过ComponentCount遍历改变字体大小以及上下左右)
- (十三)Core Java GUI(图形化界面小程序开发,事件监听机制流程,以及可运行jar包的配置实现,) (109)
- qtopia程序在板子上运行闪屏(屏幕先变绿一会后才显示窗体)
- Oculus发布程序运行报错 以及 数据库读取不出来解决方案
- 如何在运行程序时使窗体不可见
- 5.11计算程序运行时间以及activity与fragment的通信
- 程序运行时,利用反射调用不同窗体
- 举例说明一个 java程序的加载,初始化以及运行过程
- QT4.7.1以及QT create编译Ubuntu x86 pc运行程序提示g++ commond no find错误
- Java 中的 int 与 Integer 用于 List<Integer> 时,以及通过打印变量检测程序运行和函数调用次数计数
- 通俗易懂学C语言-02-C语言程序长啥样以及运行流程
- 程序运行 栈帧分析 以及 修改栈帧中数据以及函数地址
- Activity运行状态以及完全退出程序
- 运行时库说明,以及与静态库、动态库、调用程序之间的关系
- 图片 缩略 和 水印 以及 C#获取当前程序运行路径的方法集合