C# winform如何让鼠标持续停在窗体1一段时间后弹出窗体2

然后鼠标离开窗体1一段时间后窗体2消失,但若这段时间内鼠标移到窗体2的话则窗体2不消失,这该怎么实现。... 然后鼠标离开窗体1一段时间后窗体2消失,但若这段时间内鼠标移到窗体2的话则窗体2不消失,这该怎么实现。 展开
 我来答
祎999
2013-03-17
知道答主
回答量:5
采纳率:0%
帮助的人:3.2万
展开全部

但若这段时间内鼠标移到窗体2的话则窗体2不消失

:     在1窗体的属性里双击MouseLeave

     private void 锁屏_MouseLeave(object sender, EventArgs e)

        {

           加个判断当鼠标移到2窗体时向1窗体传个数


         

        }

很简单

窗体传值加个判断

帐号已注销
2013-03-16 · TA获得超过2184个赞
知道小有建树答主
回答量:631
采纳率:100%
帮助的人:644万
展开全部
建立两个个公用timer控件,设为disabled,并设为3000,就是3秒
第一步:在窗体1的enter(进入窗体)事件中,激活timer1,并启动计时,在timer的计时执行事件中,打开窗体2. 在窗体1的leave事件中,激活timer2来消失窗体2.

第二步:在窗体2的enter的事件中,把timer1 设为disable。

或者使用timer1.Start();timer1.Stop().
说的有点繁琐,你自己摸索。
追问
谢谢,思路理解了,不过我觉得应该是在窗体2的事件中把timer2设为disable吧。还有就是我在form1(主窗体)中加了这两个timer控件,可在form2中无法声明一个form1的对象,一旦写上这个声明语句程序就跑不起来,这是为什么
追答
在form1中,声明timer2时,用public timer timer2;
在form2中:
这样声明form1
Form1 f = (Form1)Application.OpenForms["Form1"];
f.timer2.enabled = false;
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jianbao0102
2013-03-19 · 超过10用户采纳过TA的回答
知道答主
回答量:39
采纳率:100%
帮助的人:23.2万
展开全部
用timer
先去了解一下timer怎么用,然后按照推荐答案就可解决
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式