1,Swing的菜单如何向上弹出,就是我想把menubar放到底下 让menu向上弹出
2,文件里的内容怎么删除?

解决方案 »

  1.   

    很久没做java了
    第一个问题比较汗,如果swing中的布局管理或菜单组件没有提供相应的接口的话,自己写一个控件吧
    至于第二个,不知道你是想删全部还是一部分,全部都想删的话,不知道java的文件流中有没有clear方法;只想删一部分的话,恐怕只能把文件中的内容读出来替换掉想要替换的字符串后再写回去了
      

  2.   

    第一个问题在GUI中好像只给了向下弹出来的menubar~~
    第二个问题你试试remove all看看行不行~~~
      

  3.   

    在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) 设置弹出组件的位置,感觉这个方法可行,楼主去试试
      

  4.   

    File的API中,对文件内容的操作只有读和写。。也许可以先读出来,判断要删除的内容不写进另一个文件。
      

  5.   

    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();
        }
    }
      

  6.   

    public static void main(String args[]) throws Exception {
    FileOutputStream file = new FileOutputStream("d:/a.txt");
    }
    直接new就行
      

  7.   

    第一个问题好象SWING还没这个功能