Java – can jmenubar be added to the decoration window of JFrame?
I want to know if I can add jmenubar to the decoration window of JFrame or jrootpane, or if I can include the border in the content pane I see apps like Firefox or Photoshop have their menu bar in the decoration window
Is that possible? I looked around Google, but I haven't found any results about this kind of thing I hope Java has this ability
Solution
Not sure what you're looking for, but you can add jmenubar to JFrame – JFrame setJMenuBar(). For more information, see the how to use menus tutorial
Edit:
The following is an overly simplified example of an undecorated frame with a menu just to demonstrate the idea
You may want to move to an existing solution – Jide uses a resizableframe for this purpose It is part of the open source Jide OSS Substance L & F supports title bar customization (see what happened to the substance LAF?) You can also use @ camickr's componentmover and componentresizer classes very effectively. For more information, see the resizing components article
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class UndecoratedFrameDemo {
    private static Point point = new Point();
    public static void main(String[] args) {
        final JFrame frame = new JFrame();
        frame.setUndecorated(true);
        frame.addMouseListener(new MouseAdapter() {
            public void mousePressed(MouseEvent e) {
                point.x = e.getX();
                point.y = e.getY();
            }
        });
        frame.addMouseMotionListener(new MouseMotionAdapter() {
            public void mouseDragged(MouseEvent e) {
                Point p = frame.getLocation();
                frame.setLocation(p.x + e.getX() - point.x,p.y + e.getY() - point.y);
            }
        });
        frame.setSize(300,300);
        frame.setLocation(200,200);
        frame.setLayout(new BorderLayout());
        frame.getContentPane().add(new JLabel("Drag to move",JLabel.CENTER),BorderLayout.CENTER);
        JMenuBar menuBar = new JMenuBar();
        JMenu menu = new JMenu("Menu");
        menuBar.add(menu);
        JMenuItem item = new JMenuItem("Exit");
        item.addActionListener(new ActionListener(){
            @Override
            public void actionPerformed(ActionEvent e) {
                System.exit(0);
            }
        });
        menu.add(item);
        frame.setJMenuBar(menuBar);
        frame.setVisible(true);
    }
}
                