Java 更多的时间来学习和理解,而不是仅仅用双脚跳进去,试图通过黑客破解。确切地说,JMenuBar属于对象窗口,但无论您稍后添加到JFrame,这都是一个匿名对象,您没有指向它的引用。不用担心,有时候你会在遇到事情的时候凭经验去了解它们。很高兴它对你有所帮助,记

Java 更多的时间来学习和理解,而不是仅仅用双脚跳进去,试图通过黑客破解。确切地说,JMenuBar属于对象窗口,但无论您稍后添加到JFrame,这都是一个匿名对象,您没有指向它的引用。不用担心,有时候你会在遇到事情的时候凭经验去了解它们。很高兴它对你有所帮助,记,java,swing,jlabel,Java,Swing,Jlabel,更多的时间来学习和理解,而不是仅仅用双脚跳进去,试图通过黑客破解。确切地说,JMenuBar属于对象窗口,但无论您稍后添加到JFrame,这都是一个匿名对象,您没有指向它的引用。不用担心,有时候你会在遇到事情的时候凭经验去了解它们。很高兴它对你有所帮助,记住,保持微笑:-)呵呵 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class UpdateLabel { private JLab


更多的时间来学习和理解,而不是仅仅用双脚跳进去,试图通过黑客破解。确切地说,
JMenuBar
属于对象窗口,但无论您稍后添加到
JFrame
,这都是一个匿名对象,您没有指向它的引用。不用担心,有时候你会在遇到事情的时候凭经验去了解它们。很高兴它对你有所帮助,记住,保持微笑:-)呵呵
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class UpdateLabel
{
    private JLabel label;
    private String labelText;

    private ActionListener action = new ActionListener()
    {
        public void actionPerformed(ActionEvent ae)
        {
            setLabelText((String) ae.getActionCommand());
            label.setText(getLabelText());
        }
    };

    private void setLabelText(String text)
    {
        labelText = text;
    }

    private String getLabelText()
    {
        return labelText;
    }

    private void createAndDisplayGUI()
    {
        final JFrame frame = new JFrame("Update Label");
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        frame.setLocationByPlatform(true);

        JMenuBar menuBar = new JMenuBar();
        JMenu programMenu = new JMenu("Program");
        JMenuItem exitMenuItem = new JMenuItem("Exit");
        exitMenuItem.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                frame.dispose();
            }
        });
        JMenu labelMenu = new JMenu("Label");
        JMenuItem updateMenuItem = new JMenuItem("Update Label");
        updateMenuItem.setActionCommand("Updated by JMenuItem");
        updateMenuItem.addActionListener(action);

        programMenu.add(exitMenuItem);
        labelMenu.add(updateMenuItem);
        menuBar.add(programMenu);
        menuBar.add(labelMenu);

        frame.setJMenuBar(menuBar);

        JPanel contentPane = new JPanel();

        label = new JLabel("I am the LABEL which will be updated!!");
        contentPane.add(label);

        JTextField tfield = new JTextField(10);
        tfield.setActionCommand("Updated by JTextField");
        tfield.addActionListener(action);

        frame.add(contentPane, BorderLayout.CENTER);
        frame.add(tfield, BorderLayout.PAGE_END);

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

    public static void main(String... args)
    {
        SwingUtilities.invokeLater(new Runnable()
        {
            public void run()
            {
                new UpdateLabel().createAndDisplayGUI();
            }
        });
    }
}
CreateGalleryXML window = new CreateGalleryXML();  
frame.setJMenuBar(window.createMenuBar());  
frame.add(new CreateGalleryXML());
CreateGalleryXML window = new CreateGalleryXML();  
frame.setJMenuBar(window.createMenuBar());  
frame.add(window);