如何在java中获取JFrame作为函数参数?

如何在java中获取JFrame作为函数参数?,java,jframe,Java,Jframe,我想制作一个不同的函数来制作java应用程序的菜单栏 在菜单栏中,需要函数frame.pack()In-action侦听器和frame.setJMenuBar语句 那个么,我们如何将框架作为对象传递给子类作为参数呢? 我在工作中遇到错误 imports.. public class sjava { public static void CreateAndRunGUI() { final JFrame frame = new JFrame("MyFrame"); code.

我想制作一个不同的函数来制作java应用程序的菜单栏

在菜单栏中,需要函数
frame.pack()
In-action侦听器和
frame.setJMenuBar
语句

那个么,我们如何将框架作为对象传递给子类作为参数呢? 我在工作中遇到错误

imports..

public class sjava {
  public static void CreateAndRunGUI() {
    final JFrame frame = new JFrame("MyFrame");

    code..

    MakeMenuBar(frame);
    frame.pack();
    frame.setVisible(true);
  }

  public static void MakeMenuBar(Object frame) {
    JMenuBar menubar = new JMenuBar();
    menubar.setBackground(new Color(180,160,130));
    menubar.setOpaque(true);
    menubar.setPreferredSize(new Dimension(800,20));
    frame.setJMenuBar(menubar);
    JMenu menu1 = new JMenu("menu1");

    code..

    mitem1.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent a) {
        code..
        SwingUtilities.updateComponentTreeUI(frame);
        frame.pack();
      }
    });
    code..
    mitem2.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent a) {
        code..
        SwingUtilities.updateComponentTreeUI(frame);
        frame.pack();
      }
    });
}
public static void main(String[] args) {
  javax.swing.SwingUtilities.invokeLater(new Runnable() {
    public void run() {
      CreateAndRunGUI();
    }
  });
}
makemenubar
函数是否可以在不使用frame作为参数的情况下使用?

您必须替换

public static void MakeMenuBar(Object frame) {...}


否则将无法访问类
JFrame
的任何方法。

MakeMenuBar
的参数列表中找不到符号:方法setJMenuBar(javax.swing.JMenuBar)位置:变量frameReplace
Object frame
jframeframe
public static void MakeMenuBar(JFrame frame) {...}