Java 多次使用Box变量
我正在做一个作业,我必须创建三行三个框,每个框中有一个1-9的数字。由于某些原因,此代码不起作用,它只打印一行,中间有一个1:Java 多次使用Box变量,java,swing,Java,Swing,我正在做一个作业,我必须创建三行三个框,每个框中有一个1-9的数字。由于某些原因,此代码不起作用,它只打印一行,中间有一个1: import javax.swing.*; import java.awt.*; public class PracticeTwo extends JPanel { private JFrame mainFrame = new JFrame(""); private Box bigBox = Box.createVerticalBox(); privat
import javax.swing.*;
import java.awt.*;
public class PracticeTwo extends JPanel {
private JFrame mainFrame = new JFrame("");
private Box bigBox = Box.createVerticalBox();
private Box smallBox = Box.createHorizontalBox();
private Box numBox = Box.createVerticalBox();
public void makeGui () {
mainFrame.add(bigBox);
bigBox.setAlignmentX(Component.LEFT_ALIGNMENT);
while (num < 10) {
bigBox.add(smallBox);
smallBox.add(numBox);
numBox.add(numIncrement);
smallBox.add(numBox);
numBox.add(numIncrement);
smallBox.add(numBox);
numBox.add(numIncrement);
num++;
}
mainFrame.setVisible(true);
mainFrame.pack();
}
}
我想我的问题是:我可以多次使用同一个Box变量来简化这个GUI的创建,还是每次创建同一种Box时都必须创建不同的变量?因为Box只是另一个JComponent,所以必须为组件层次结构中的每个位置创建一个单独的变量。换句话说,不能像不能重用一个JTextField一样重用一个框。由于框只是另一个JComponent,因此必须为组件层次结构中的每个位置创建一个单独的框。换句话说,不能像不能重用一个JTextField一样重用一个框。变量用于保存对对象实例的引用,以便以后需要时可以访问这些实例。使用变量并不是将这些引用放在手边的唯一方法。另一种方法是通过数据结构。数据结构的一些示例有:数组、树、列表、表等。我想在课程的这一点上,您可能还没有学会如何使用数据结构,因此现在必须定义多个变量就可以了。在实际代码中,您不会这样做。变量用于保存对对象实例的引用,以便以后需要时可以访问这些实例。使用变量并不是将这些引用放在手边的唯一方法。另一种方法是通过数据结构。数据结构的一些示例有:数组、树、列表、表等。我想在课程的这一点上,您可能还没有学会如何使用数据结构,因此现在必须定义多个变量就可以了。在实际代码中,您不会这样做。谢谢您的帮助!这使得这个布局冗长乏味如果使用工厂方法,则不会。编辑:在你的情况下,这太过分了。谢谢你的帮助!这使得这个布局冗长乏味如果使用工厂方法,则不会。编辑:在你的情况下,这是一种过分的做法。什么是numIncrement?您还没有定义它,它是否来自某个导入?抱歉,我确实有它,我没有写进去,因为我在复制我的注释掉的代码尝试。numIncrement是什么?您还没有定义它,它是否来自其中一个导入?抱歉,我确实有它,我没有将它写入,因为我正在复制我注释掉的代码尝试。