import java.awt.*;
class TestPopupMenu
{
public static void main(String[] args)
{
Frame f = new Frame("TestMenuComponent");
f.setSize(500,300);
f.setBackground(Color.lightGray);
MenuBar mb = new MenuBar();
f.setMenuBar(mb);
PopupMenu pm = new PopupMenu("弹出式菜单");
mb.add(pm);
/*
容易在中文状态下打出分号,报错提示:非法字符\65307
纠错过程:根据Unicode,将65307换算成16进制为FF1B,查找到对应的字符为中文
状态下的分号
*/
MenuItem m1 = new MenuItem("菜单1");
MenuItem m2 = new MenuItem("菜单2");
MenuItem m3 = new MenuItem("菜单3");
pm.add(m1);
pm.add(m2);
pm.add(m3);
//f.add(pm); 这句不能加上,否则窗口中看不到popupmenu
f.setVisible(true);
//本示例中没有弹出效果,可能是因为没有加入“事件监听”
}
}在写语句MenuItem m1 = new MenuItem("菜单1"); 时,误在中文输入状态下输入了分号,运行时报错:非法字符 \65307
经分析,因为字符编码是Unicode字符集,所以想到将65307化为16进制,也就是FF1B,查阅unicode字符集,找到了对应的中文输入法下的分号,这才发现自己写代码时输入错误!
本文介绍了一个简单的 Java AWT 应用示例,通过创建 Frame 和 PopupMenu 来展示如何实现基本的菜单功能。在示例中详细说明了如何添加 MenuItem 到 PopupMenu,并分享了在开发过程中遇到的关于中文输入状态下分号导致的编译错误及解决办法。
1039

被折叠的 条评论
为什么被折叠?



