窗体的Activated事件使用

寂寞沙洲 2011-09-15 09:17:21
个人以为winform的Activated事件是在窗体激活时触发,但发现:
private void FrmStudent_Activated(object sender, EventArgs e)
{
MessageBox.Show("active");
}
在窗体显示时会不断的出现对话框,只好强制结束程序。
不知Activated事件为什么会反复触发?这个事件究竟用在哪里合适?
...全文
2258 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ycproc 2011-09-15
  • 打赏
  • 举报
回复
点击菜单时, 是 activated 的,但是后面还有别的事件,比如: size_changed 事件
sanjiawan 2011-09-15
  • 打赏
  • 举报
回复
这是窗体激活事件 就是当窗体获得当前操控权(不是官方说法)时激发该事件 你不断对弹出窗口的按确定 使得窗体重新获得操控权激活窗体 重复发生该事件

你可以用下面的代码测试下

private void FrmStudent_Activated(object sender, EventArgs e)
{
textBox1.Text = DateTime.Now.Second.ToString();
}

将窗体最小化 然后最大化可以看到 文本框中的时间在变化 而当窗体显示时 你最大化窗体和正常大小来回切换 时间是不会变化的 因为窗体始终处于一种状态
萧炎 2011-09-15
  • 打赏
  • 举报
回复
任务栏的右键菜单里面的最小化
或者点击菜单时可以用这个事件
萧炎 2011-09-15
  • 打赏
  • 举报
回复
用户或者程序激活窗体时就发生
所以这个事件几乎随时都发生

111,113

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧