小编Mat*_*anu的帖子

如何让JScrollPane填充JPanel的高度

我从Java和Swing开始,所以我有一个非常简单的问题,但我找不到任何(简单)方法来解决它...

我的意思是只有一个列表滚动器占据一个面板的整个高度,仅此而已.这是我已编写的代码,thanx帮助我找到实现目标的方法:

public class TestCode {

public static void main(String[] args) {

    JFrame window = new JFrame("Test");
    window.setSize(300, 300);
    window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JPanel panelUp = new JPanel();
    JPanel panelCenter = new JPanel();
    JPanel panelDown = new JPanel();

    window.add(panelUp, BorderLayout.NORTH);
    window.add(panelCenter, BorderLayout.WEST);
    window.add(panelDown, BorderLayout.SOUTH);

    panelUp.setBackground(new Color(200, 240, 200));
    panelCenter.setBackground(new Color(240, 200, 200));
    panelDown.setBackground(new Color(200, 200, 240));

    Vector v = new Vector();
    v.addElement("Element 1");
    v.addElement("Element 2");
    v.addElement("Element 3");
    v.addElement("Element 4");
    v.addElement("Element 5");
    v.addElement("Element 6");

    JList list = new JList(v);
    JScrollPane listScroller = new JScrollPane(list); …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jscrollpane jlist

1
推荐指数
1
解决办法
4962
查看次数

用 JPanel 填充 GridBagLayout 的单元格是一种简单的方法吗?

在 a 中创建一个面板BorderLayout来填充单元格是一种简单的方法吗?

这是一个简单的示例,我希望灰色面板 ( pnlTitle) 与包含的单元格 (100 像素) 一样宽,但我希望没有类似的东西pnlTitle.setPreferredSize(new Dimension(100, 20));

这是代码:

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class TestCode2_InsideColumn {

public static void main(String[] args) {

    JFrame window = new JFrame("Test");
    window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    window.setSize(400, 200);
    window.setMinimumSize(new Dimension(350, 150));

    JPanel panelMain = new JPanel(new BorderLayout());
    window.add(panelMain);

    JLabel labelN = new JLabel("North");
    panelMain.add(labelN, BorderLayout.NORTH);

    JLabel labelS = new JLabel("South");
    panelMain.add(labelS, BorderLayout.SOUTH);

    GridBagLayout innerLayout = new GridBagLayout(); …
Run Code Online (Sandbox Code Playgroud)

java swing jlabel jpanel

1
推荐指数
1
解决办法
653
查看次数

标签 统计

java ×2

jpanel ×2

swing ×2

jlabel ×1

jlist ×1

jscrollpane ×1