所以我想让我的 Jscrollpane 显示 Pascals 三角形。我有这个:
labelPanel= new JPanel();
lRows = new JLabel[n];
for (int i=0;i<n;i++){
lRows[i]=new JLabel(Arrays.toString(tri.tri[i]));
labelPanel.add(lRows[i]);
}
但这不是我想要的,我不确定如何解决这个问题,包括图片。有帮助吗?
最佳答案
默认情况下,JPanel
使用流布局。要获得您正在寻找的垂直排列,您应该能够通过在 labelPanel
上使用垂直方向的 BoxLayout
来做到这一点,然后添加您的 JLabel
行。
labelPanel= new JPanel();
//set this up to order things vertically
labelPanel.setLayout(new BoxLayout(labelPanel, BoxLayout.Y_AXIS));
lRows = new JLabel[n];
for (int i=0;i<n;i++){
lRows[i]=new JLabel(Arrays.toString(tri.tri[i]));
//to center your label, just set the X alignment
lRows[i].setAlignmentX(Component.CENTER_ALIGNMENT)
labelPanel.add(lRows[i]);
}
我还插入了一条线,使行居中,就像您的图片一样。 Component
来自 java.awt
包。
您可以在 Java Tutorial 中阅读默认可用的不同布局管理器。
关于java - JScrollPane 格式化以显示 Pascals 三角形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30288447/