C# WINFORM 如何在新窗体中关闭(停止)原窗体的时钟

2024-12-15 23:59:42
推荐回答(5个)
回答1:

你不会是在Form2中这样调用Form1中的方法的吧
Form1 fr1 = new Form1();
fr1.CloseTime();

方法一
1、这样打开Form2
Form2 fr2 = new Form2();
fr2.ShowDialog(this);
2、这样执行Form1中的方法
((Form1)this.Owner).CloseTime();

方法二
把Form2的构造函数加个参数,类型是Form1
创建Form2时把this传递进来
在Form2中接收一下参数存成成员变量例如Form1 _form1
用这个成员变量执行CloseTime()方法。_form1.CloseTime();

回答2:

像这种问题,一般可以换一种方式做,比如在窗体2的构造器中传一个时间控件的参数,然后在这个构造器中关闭这个时间控件。当然,把窗体2Show出来的时候 new Form2(timer);以这种形式,show出来。然后在Form2的构造器中利用这个timer参数关闭这个时间控件。不知道我说清楚了没有。你可以和我私聊

回答3:

首先你要确定你调用的form1.CloseTime(); 这个form1是你打开form2的那个窗体
不然的话如果是你在form2中 Form1 fr1 = new Form1(); 然后fr1.CloseTime();这样肯定是没办法停掉的

回答4:

你怎么调的CloseTime()?我不把Form1的句柄传过去调不到方法,传过去的话是可以成功的

回答5:

思路不正确 容我再想想