Applet用popupMenu弹出菜单后如何销毁?

红色代码 2012-10-29 12:24:25
一个Applet程序,功能是这样的,当鼠标移到某一个矩形之内后,用popupMenu弹出一个菜单,鼠标移出这个矩形后,菜单自动消失.现在的问题是,鼠标移出矩形后,菜单无法自动消失,用户必须点击菜单的某一项之后菜单才能消失,可是在弹出菜单之后好像popupMenu就自动获取了焦点,之后的MouseMove消息便不接收了?该如何是好?

public void mouseMoved(MouseEvent e) {
if (GetRect().contains(e.getX(), e.getY())) {
popupMenu.Show();
}
} else {
if (null != popupMenu) {
if (tooltipShowed) {
System.out.println("右键菜单");
// 销毁右键菜单,暂时没有找到实现方法,
// 因为右键菜单弹出时窗口焦点丢失,此后主窗体便不接收消息了
// 屏蔽了上面popupMenu.Show();语句之后,便可以接收窗体消息了,何解?
}
}
}
}
...全文
110 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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