Java 在 GUI 上定位列表

标签 java user-interface swing jlist

我正在尝试将 JList 添加到 GUI,但想知道如何定位它?我希望它显示在 TextArea 的右侧,用于将发送到 GUI 以供选择的数据。

任何人都可以建议如何做到这一点?这是代码(注意:对于 Java 和 GUI 来说非常新)

protected static void createAndShowGUI() {
        GUI predict = new GUI();
        JFrame frame = new JFrame("Phone V1.0");

        frame.setContentPane(predict.createContentPane());

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.pack();
        frame.setMinimumSize(new Dimension(300, 400));
        frame.setVisible(true); // Otherwise invisible window
}

private JPanel createContentPane() {
    JPanel pane = new JPanel();

    TextArea = new JTextArea(5, 10);
    TextArea.setEditable(false);
    TextArea.setLineWrap(true);
    TextArea.setWrapStyleWord(true);
    TextArea.setWrapStyleWord(true);
    pane.setLayout(new BoxLayout(pane, BoxLayout.Y_AXIS)); 
    //Adds the buttons from Top     to Bottom

    String[] items = {"dsfsdfd"};
    list = new JList(items);
    JScrollPane scrollingList = new JScrollPane(list);
    int orient = list.getLayoutOrientation();

    JPanel window = new JPanel();
    pane.add(window);

    JPanel buttonPanel = new JPanel();
    buttonPanel.setLayout(new GridLayout(5, 3));

    JButton[] buttons = new JButton[] {
        new JButton("Yes"),
        new JButton(""),
        new JButton("Clr"),
        new JButton("1"),
        new JButton("2abc"),
        new JButton("3def"),
        new JButton("4ghi"),
        new JButton("5jkl"),
        new JButton("6mno"),
        new JButton("7pqrs"),
        new JButton("8tuv"),
        new JButton("9wxyz"),
        new JButton("*+"),
        new JButton("0_"),
        new JButton("^#")
    };  // Array Initialiser

    for (int i = 0; i < buttons.length; i++) {
        buttonPanel.add(buttons[i]);
        buttons[i].addActionListener(this);
    }
    pane.add(TextArea);
    pane.add(list);
    pane.add(buttonPanel);


    return pane;
}

最佳答案

阅读 Using Layout Mananger 上的 Swing 教程部分.没有必要只使用一个布局管理器。您可以嵌套布局管理器以获得所需的效果。

关于Java 在 GUI 上定位列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2759840/

相关文章:

Java - 在方法内创建返回 Stub 接口(interface)

java - 清除 JScrollPane 但不能然后 'attach' 表

java - JList 使用对象删除列表

java - CardLayout - 替换面板

java - Java Swing中实现 Sprite 的波动效果

java - findviewbyid 错误无法解决

java - Spring 集成文件支持

java - 是否可以显示多个文本字段,供用户在每个文本字段中输入他们想要的项目数?

java - 检查 JFrame 是否可见(另一个程序不在它前面)

java - 如何调整单个 JTable 列的大小而不影响其他表列