好的伙计们,这里有谦卑。自从我使用Java Swing以来已经很长时间了,所以我知道这个问题有一些非常明显的解决方案。我想要做的是让所有这些各种摆动元素出现在窗口中。当我运行代码时,没有任何反应。我什么都没看到。每次我谷歌答案我得到关于各种复杂的JPanel问题的东西,我几乎是积极的,这不是一个困难的问题。所以这是我的代码:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
public class LimoSysDriver extends JFrame implements ActionListener {
/**
* @param args
*/
JLabel title = new JLabel("Thread Test Application");
JLabel numOne = new JLabel("1");
JLabel numTwo = new JLabel("2");
JLabel numThr = new JLabel("3");
JLabel numFou = new JLabel("4");
JProgressBar progOne = new JProgressBar();
JProgressBar progTwo = new JProgressBar();
JProgressBar progThr = new JProgressBar();
JProgressBar progFou = new JProgressBar();
JLabel counterOne = new JLabel(Integer.toString(progOne.getValue()));
JLabel counterTwo = new JLabel(Integer.toString(progTwo.getValue()));
JLabel counterThr = new JLabel(Integer.toString(progThr.getValue()));
JLabel counterFou = new JLabel(Integer.toString(progFou.getValue()));
JLabel numGrandTot = new JLabel("Grand Total");
JLabel counterTot = new JLabel();
JButton start = new JButton();
JButton pause = new JButton();
JButton resume = new JButton();
public LimoSysDriver(){
setSize(700,300);
JPanel pane = new JPanel();
pane.setLayout(new BoxLayout(pane, BoxLayout.PAGE_AXIS));
add(pane);
JPanel lowerPanel = new JPanel();
lowerPanel.setLayout(new BoxLayout(lowerPanel, BoxLayout.LINE_AXIS));
add(lowerPanel);
pane.add(title);
pane.add(numOne);
pane.add(progOne);
pane.add(counterOne);
pane.add(numTwo);
pane.add(progTwo);
pane.add(counterTwo);
pane.add(numThr);
pane.add(progThr);
pane.add(counterThr);
pane.add(numFou);
pane.add(progFou);
pane.add(counterFou);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
LimoSysDriver window = new LimoSysDriver();
}
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
}
}
问题是,窗口根本没有出现。一旦我能解决这个问题,我就可以对其余部分进行故障排除。提前谢谢大家。
答案 0 :(得分:2)
您需要将其设置为可见。使用:
setVisible(true)
答案 1 :(得分:2)
一些提示:
需要显示JFrame
来电setVisible(true)
您可以使用add(pane)
替换用作内容窗格的默认容器,而不是setContentPane(pane)
。
完成添加组件后,在JFrame
可见之前,请不要忘记调用pack()方法。
除非您需要添加某些功能,否则请避免从JFrame
扩展。如果不是这种情况,请改为使用JFrame
变量或类成员。