c# 实例化窗体
一个按钮点击事件有以下代码:
form2 f2 = new form2();
f2.Show();
每点一次按钮就会创建一个窗体的实例,
每个窗体的名字都是form2?f2?
我怎么区分它们?可以区分它们吗
------解决方案--------------------这么区分有什么用,form2出现多个后执行的操作都是一样的。
------解决方案--------------------1、不重复弹出相同的窗体
public static Form2 form;
if (Program.form == null)
{
Program.form = new Form2();
}
Program.form.Show();
2、如何判断
form.Tag通过这个给每个窗体加入一个你能够识别的标识然后通过tag去识别
------解决方案--------------------也就是form2类的多个对象而以,随你怎么用
------解决方案--------------------每次产生的都是局部变量,过程结束就没了.根本无法操作.
在全局上宣言一个数组.
型号为FORM2
------解决方案--------------------可以用数据嘛,如果点击一次,就创建一个:
例如:
Dictionary <int,form2> dic = new Dictionary <int,form2> ();
然后按索引取出就可以了。
------解决方案--------------------tigerlgf(南湖学士)
你的代码语法检查都通不过啊.
------解决方案--------------------每次产生的都是局部变量,过程结束就没了.根本无法操作.
在全局上宣言一个数组.
型号为FORM2
=========
up
------解决方案--------------------每个实例都是你类的一个对象罢了.
------解决方案--------------------用tag 或者text標示
------解决方案--------------------TAG
------解决方案--------------------可用静态static!!!
------解决方案--------------------如果有共用属性或变量就 static,如果没有就取FORM中的一个值区分,TAG,TEXT,自定义变量都行。
------解决方案--------------------Handle(从 Control 继承) 获取控件绑定到的窗口句柄。
可以用
form2 f2 = new form2();
f2.Show();
f2.Handle 来区别每个窗口吧。