1

わかりました、ここに謙虚さがあります。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

    }

}

問題は、ウィンドウがまったく表示されないことです。それを整理できたら、残りのトラブルシューティングを行うことができます。よろしくお願いします。

4

2 に答える 2

2

見えるように設定する必要があります。使用する:

setVisible(true)
于 2013-10-09T13:49:58.223 に答える