C# WINFORM 如何在新窗体中关闭(停止)原窗体的时钟
在FORM1中打开FORM2,方式为:Form2fr2=newForm2();fr2.ShowDialog();然后Form1中有一个public方法publicvoid...
在FORM1中打开FORM2,方式为:
Form2 fr2 = new Form2();
fr2.ShowDialog();
然后Form1中有一个public方法
public void CloseTime()
{
timer1.Enabled = false;
}
然后我在Form2中的Load事件中调用Form1的CloseTime()
Form1中的timer1时钟还在运行。
我调试过发现有执行关闭的方法。
我该如何正确的关掉Form1上的timer1时钟?
谢谢。
timer1.Stop();
也没用,忘记说了。也试过了。
应该是思路错了,不能这么做。
但是不知道要怎么做。 展开
Form2 fr2 = new Form2();
fr2.ShowDialog();
然后Form1中有一个public方法
public void CloseTime()
{
timer1.Enabled = false;
}
然后我在Form2中的Load事件中调用Form1的CloseTime()
Form1中的timer1时钟还在运行。
我调试过发现有执行关闭的方法。
我该如何正确的关掉Form1上的timer1时钟?
谢谢。
timer1.Stop();
也没用,忘记说了。也试过了。
应该是思路错了,不能这么做。
但是不知道要怎么做。 展开
5个回答
展开全部
你不会是在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();
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的构造器中传一个时间控件的参数,然后在这个构造器中关闭这个时间控件。当然,把窗体2Show出来的时候 new Form2(timer);以这种形式,show出来。然后在Form2的构造器中利用这个timer参数关闭这个时间控件。不知道我说清楚了没有。你可以和我私聊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先你要确定你调用的form1.CloseTime(); 这个form1是你打开form2的那个窗体
不然的话如果是你在form2中 Form1 fr1 = new Form1(); 然后fr1.CloseTime();这样肯定是没办法停掉的
不然的话如果是你在form2中 Form1 fr1 = new Form1(); 然后fr1.CloseTime();这样肯定是没办法停掉的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你怎么调的CloseTime()?我不把Form1的句柄传过去调不到方法,传过去的话是可以成功的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
思路不正确 容我再想想
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询