2个小问题 快来抢分阿 1,Swing的菜单如何向上弹出,就是我想把menubar放到底下 让menu向上弹出2,文件里的内容怎么删除? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 很久没做java了第一个问题比较汗,如果swing中的布局管理或菜单组件没有提供相应的接口的话,自己写一个控件吧至于第二个,不知道你是想删全部还是一部分,全部都想删的话,不知道java的文件流中有没有clear方法;只想删一部分的话,恐怕只能把文件中的内容读出来替换掉想要替换的字符串后再写回去了 第一个问题在GUI中好像只给了向下弹出来的menubar~~第二个问题你试试remove all看看行不行~~~ 在api里看到这个方法:javax.swing 类 JMenu void setAccelerator(KeyStroke keyStroke) 没有为 JMenu 定义 setAccelerator。 void setComponentOrientation(ComponentOrientation o) 设置语言敏感的方向,用于排序此组件内的元素或文本。 void setDelay(int d) 设置菜单的 PopupMenu 向上或向下弹出前建议的延迟。 void setMenuLocation(int x, int y) 设置弹出组件的位置。 void setModel(ButtonModel newModel) 设置“菜单按钮”的数据模型,即用户单击可以打开或关闭菜单的标签。 void setPopupMenuVisible(boolean b) 设置菜单弹出的可见性。 void setSelected(boolean b) 设置菜单的选择状态。 void updateUI() 利用当前外观的值重置 UI 属性。 void setMenuLocation(int x, int y) 设置弹出组件的位置,感觉这个方法可行,楼主去试试 File的API中,对文件内容的操作只有读和写。。也许可以先读出来,判断要删除的内容不写进另一个文件。 public class MenuBar { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub JFrame frame = new MainWindow("Test"); frame.setVisible(true); }}class MainWindow extends JFrame { JPopupMenu pMenu; JPanel p; MainWindow(String title) { super(title); setBounds(400, 200, 200, 200); JMenuBar menubar = new JMenuBar(); JMenu menu = new JMenu("文件"); menu.setMenuLocation(menubar.getX(), menubar.getY()- 25); JMenu mItem = new JMenu("新建"); JMenuItem subItem1 = new JMenuItem("Java Source"); JMenuItem subItem2 = new JMenuItem("Jsp Source"); p = new JPanel(); pMenu = new JPopupMenu(); JMenuItem pItem1 = new JMenuItem("复制"); JMenuItem pItem2 = new JMenuItem("粘贴"); JMenuItem pItem3 = new JMenuItem("剪切"); this.getContentPane().add(menubar,BorderLayout.SOUTH); menubar.add(menu); menu.add(mItem); mItem.add(subItem1); mItem.add(subItem2); add(p); p.add(pMenu); pMenu.add(pItem1); pMenu.add(pItem2); pMenu.add(pItem3); p.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { if (e.getButton() == MouseEvent.BUTTON3) { pMenu.show(p, e.getX(), e.getY()); } } }); validate(); }} public static void main(String args[]) throws Exception { FileOutputStream file = new FileOutputStream("d:/a.txt"); }直接new就行 第一个问题好象SWING还没这个功能 帮忙解释一下吧 ,详细一点,关于StringBuilder类型的,详情请进. 网络题目、 生成的BMP图片内容为空? JAVA递归遍历题 播放音乐的简单小程序,大家给看看。 为什么答案是B 如何双击JTable的表头,让table排序?多谢! jdbtable时间字段显示求助 如何在CS通讯下传递对象,高分求解 这代码应该怎么写 java如何获取系统的开机时间?(就是说电脑已经开机多长时间了) 求一个Select语句:如何实现MySQl的递归查询
第一个问题比较汗,如果swing中的布局管理或菜单组件没有提供相应的接口的话,自己写一个控件吧
至于第二个,不知道你是想删全部还是一部分,全部都想删的话,不知道java的文件流中有没有clear方法;只想删一部分的话,恐怕只能把文件中的内容读出来替换掉想要替换的字符串后再写回去了
第二个问题你试试remove all看看行不行~~~
javax.swing
类 JMenu void setAccelerator(KeyStroke keyStroke)
没有为 JMenu 定义 setAccelerator。
void setComponentOrientation(ComponentOrientation o)
设置语言敏感的方向,用于排序此组件内的元素或文本。
void setDelay(int d)
设置菜单的 PopupMenu 向上或向下弹出前建议的延迟。
void setMenuLocation(int x, int y)
设置弹出组件的位置。
void setModel(ButtonModel newModel)
设置“菜单按钮”的数据模型,即用户单击可以打开或关闭菜单的标签。
void setPopupMenuVisible(boolean b)
设置菜单弹出的可见性。
void setSelected(boolean b)
设置菜单的选择状态。
void updateUI()
利用当前外观的值重置 UI 属性。 void setMenuLocation(int x, int y) 设置弹出组件的位置,感觉这个方法可行,楼主去试试
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
JFrame frame = new MainWindow("Test");
frame.setVisible(true);
}}class MainWindow extends JFrame {
JPopupMenu pMenu;
JPanel p; MainWindow(String title) {
super(title);
setBounds(400, 200, 200, 200); JMenuBar menubar = new JMenuBar();
JMenu menu = new JMenu("文件");
menu.setMenuLocation(menubar.getX(), menubar.getY()- 25);
JMenu mItem = new JMenu("新建");
JMenuItem subItem1 = new JMenuItem("Java Source");
JMenuItem subItem2 = new JMenuItem("Jsp Source");
p = new JPanel();
pMenu = new JPopupMenu();
JMenuItem pItem1 = new JMenuItem("复制");
JMenuItem pItem2 = new JMenuItem("粘贴");
JMenuItem pItem3 = new JMenuItem("剪切"); this.getContentPane().add(menubar,BorderLayout.SOUTH);
menubar.add(menu);
menu.add(mItem);
mItem.add(subItem1);
mItem.add(subItem2);
add(p);
p.add(pMenu);
pMenu.add(pItem1);
pMenu.add(pItem2);
pMenu.add(pItem3);
p.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
if (e.getButton() == MouseEvent.BUTTON3) {
pMenu.show(p, e.getX(), e.getY());
} }
}); validate();
}
}
FileOutputStream file = new FileOutputStream("d:/a.txt");
}
直接new就行