JPopupMenu 怎么设置 鼠标 移出按钮,弹出菜单 自动收缩啊?新谢谢大家了~!!!
解决方案 »
- Java的RMI只能本地调用,放到服务器上就无法调用
- jdbc relative方法
- 有人有比较成熟的!用线程池的多线程文件下载!
- 关于Exception in thread "main" java.lang.NullPointerException异常的,高手谢谢
- 100分重拳出击,请教几个问题.能解答者,分数多多有加.
- Servlet中的session怎么这么不好用??
- 关于javax.swing.event.DocumentListener的问题
- 为什么我对JTree重载后输出的还是它本身默认的那些目录
- 如何延时3秒?
- applet可不可以在loading的时候显示点图片或动画之类的东西,就象flash一样?
- 如何克隆一个基本类型?
- 第21题 若需要定义一个类域或类方法,应使用哪种修饰符?
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;public class TestJPopupMenu { /**
* @param args
*/
public static void main(String[] args) {
MyJframe test = new MyJframe();
}}
class MyJframe extends JFrame {
JPopupMenu jPopupMenu1 = new JPopupMenu();
JMenuItem insertMenu = new JMenuItem();
JMenuItem updateMenu = new JMenuItem();
JMenuItem deleteMenu = new JMenuItem();
JButton yes = new JButton();
public MyJframe() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() {
this.setSize(300,400);
this.getContentPane().setLayout(null);
this.setLocationRelativeTo(null);
insertMenu.setText("增加");
updateMenu.setText("更新");
deleteMenu.setText("删除");
jPopupMenu1.add(insertMenu);
jPopupMenu1.add(updateMenu);
jPopupMenu1.add(deleteMenu);
this.yes.setBounds(80, 50, 200, 200);
this.yes.addMouseListener(new MyJframe_actionAdapter(this));
this.getContentPane().add(yes);
this.setVisible(true);
}
//点击时调用
public void yes_actionPerformed(MouseEvent e) {
jPopupMenu1.show(this.yes,e.getX(), e.getY());
}
//离开
public void exited(MouseEvent e) {
}
}
class MyJframe_actionAdapter extends MouseAdapter {
private MyJframe adaptee;
MyJframe_actionAdapter(MyJframe adaptee) {
this.adaptee = adaptee;
} public void mouseClicked(MouseEvent e) {
adaptee.yes_actionPerformed(e);
}
public void mouseExited(MouseEvent e) {
adaptee.exited(e);
}
}
当鼠标移出按钮,菜单马上收回这一需求。看似简单,但有些逻辑需要判断。
public void exited(MouseEvent e) {
}怎么可能自动收回呢!!!分给你了,问题还没解决呢!!!