请问有人遇到过这样的问题么??有关JPopupMenu的问题 高分求助 在线等待

ggimm 2003-10-19 11:07:04
我在一个窗口上加上popupmenu后 发现不能使用上下键来移动选项
代码在下面 不信你试试 有谁能让他可以用键盘控制来选择哪一项么import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

class WinEventTry extends JFrame implements MouseListener
{
JPopupMenu popup;
DefaultSingleSelectionModel dsm;
public WinEventTry()
{
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel p = new JPanel();
getContentPane().add("Center", p);
setBounds(40,30,300,200);
addMouseListener(this);
show();
}
public void creatPopup(Point p)
{
popup = new JPopupMenu();
JMenuItem mi;
mi = popup.add(new JMenuItem("haha",'h'));
mi = popup.add(new JMenuItem("why",'w'));
mi = popup.add(new JMenuItem("now",'n'));
JMenu made = new JMenu("made");
made.setMnemonic('m');
mi = made.add(new JMenuItem("node",'o'));
mi = made.add(new JMenuItem ("ok",'k'));
popup.add(made);
popup.show(this,p.x,p.y);
}
public void mouseClicked(MouseEvent e)
{
if(e.isPopupTrigger())
{
creatPopup(e.getPoint());
popup.requestFocus();
}
}
public void mouseEntered(MouseEvent e)
{
}
public void mouseExited(MouseEvent e)
{
}
public void mousePressed(MouseEvent e)
{
if(e.isPopupTrigger())
{
creatPopup(e.getPoint());
popup.requestFocus();
}
}
public void mouseReleased(MouseEvent e)
{
if(e.isPopupTrigger())
{
creatPopup(e.getPoint());
popup.requestFocus();
}
}

public static void main(String[] args)
{
new WinEventTry();
}
}

...全文
55 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ggimm 2003-10-19
  • 打赏
  • 举报
回复
有谁有解决的方法么??
我看了下API 是不是它和JMenu继承的类不一样造成的呢??
LuZhou 2003-10-19
  • 打赏
  • 举报
回复
正常的,我觉得如果做GUI的话,还是不要用java,我觉得java的优势在J2EE、J2ME,学习J2SE是主要是为学习J2EE、J2ME打基础。
ggimm 2003-10-19
  • 打赏
  • 举报
回复
如果是用 1。3的jdk连快捷键都不能用 1.4的jdk可以用快捷键了可是还是不能用上下键控制选择

62,614

社区成员

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

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