Swing-显示空白屏幕的Java程序



我正在制作一个我妈妈建议的新程序。它应该列出我们拥有的物品和我们需要的物品。现在我只有一个类,窗口创建类,它给了我一个空白屏幕。我不知道为什么,但我可能错过了一些至关重要的小步骤。这是迄今为止的代码:

public class ListerWindow {
static JButton addToOwned = new JButton("Add Item To Owned List");
static JButton removeFromOwned = new JButton("Remove Item From Owned List");
static JButton addToNeeded = new JButton("Add Item To Shopping List");
static JButton removeFromNeeded = new JButton("Remove From Shopping List");
static JTextArea neededList = new JTextArea();
static JTextArea ownedList = new JTextArea();
static JFrame frame = new JFrame("Shopping Lister");
static JLabel ownedListLabel = new JLabel("Owned List");
static JLabel neededListLabel = new JLabel("Shopping List");
public static void ListerWindowCreator(String[] args) {
    JPanel windowContent = new JPanel();
    GridLayout gl = new GridLayout(4,3);
    windowContent.setLayout(gl);
    windowContent.add(ownedListLabel);
    windowContent.add(neededListLabel);
    windowContent.add(ownedList);
    windowContent.add(neededList);
    windowContent.add(addToOwned);
    windowContent.add(addToNeeded);
    windowContent.add(removeFromOwned);
    windowContent.add(removeFromNeeded);
    neededList.setEditable(false);
    ownedList.setEditable(false);
    ownedListLabel.setForeground(Color.BLUE);
    neededListLabel.setForeground(Color.BLUE);
    frame.setBackground(Color.BLACK);
    removeFromNeeded.setForeground(Color.RED);
    removeFromOwned.setForeground(Color.RED);
    addToNeeded.setForeground(Color.GREEN);
    addToOwned.setForeground(Color.GREEN);
    frame.setExtendedState(Frame.MAXIMIZED_BOTH);
    frame.setVisible(true);
    }
public static void main(String[] args) {
    new ListerWindow();
    ListerWindowCreator(args);
}
}

我很确定我已经得到了所有的进口,到目前为止,我有javax.swing.*java.awt.*

PS:我可以在eclipse中调试吗?如何调试?

您需要使用JFrame 添加windowContent

   frame.add(windowContent);

对于JFrame的确切大小,您可以使用frame.pack();而不是frame.setExtendedState (Frame.MAXIMIZED_BOTH);

希望这就是您想要的

import java.awt.*;
import javax.swing.*;
public class ListerWindow{
    static JButton addToOwned = new JButton("Add Item To Owned List");
    static JButton removeFromOwned = new JButton("Remove Item From Owned List");
    static JButton addToNeeded = new JButton("Add Item To Shopping List");
    static JButton removeFromNeeded = new JButton("Remove From Shopping List");
    static JTextArea neededList = new JTextArea();
    static JTextArea ownedList = new JTextArea();
    static JFrame frame = new JFrame("Shopping Lister");
    static JLabel ownedListLabel = new JLabel("Owned List");
    static JLabel neededListLabel = new JLabel("Shopping List");
    public static void ListerWindowCreator(String[] args) {
        JPanel windowContent = new JPanel();
        GridLayout gl = new GridLayout(4,2);
        windowContent.setLayout(gl);
        windowContent.add(ownedListLabel);
        ownedList.setText("ownedList");
        windowContent.add(ownedList);
        windowContent.add(neededListLabel);
        neededList.setText("NeededList");
        windowContent.add(neededList);
        windowContent.add(addToOwned);
        windowContent.add(addToNeeded);
        windowContent.add(removeFromOwned);
        windowContent.add(removeFromNeeded);
       // neededList.setEditable(false);
       // ownedList.setEditable(false);
        ownedListLabel.setForeground(Color.BLUE);
        neededListLabel.setForeground(Color.BLUE);
        frame.setBackground(Color.BLACK);
        removeFromNeeded.setForeground(Color.RED);
        removeFromOwned.setForeground(Color.RED);
        addToNeeded.setForeground(Color.GREEN);
        addToOwned.setForeground(Color.GREEN);
        frame.setContentPane(windowContent);
        frame.setSize(200,200);
        //frame.setExtendedState(Frame.MAXIMIZED_BOTH);
        frame.setVisible(true);
    }
    public static void main(String[] args) {
        new ListerWindow();
        ListerWindowCreator(args);
    }
}

最新更新