2016-11-07 3 views
0

WindowBuilderプレビューを使用すると、コードが表示されますが、プログラムを実行すると、空のフレームをアップする。プレビューではうまく見えますが、実行するとすぐに空白のフレームが表示されます。WindowBuilderのプレビュー機能を使用すると、コードが表示されますが、「実行」を押すと表示されません

import java.awt.BorderLayout; 
import java.awt.Color; 
import java.awt.EventQueue; 
import java.awt.Point; 

import javax.swing.JFrame; 
import javax.swing.JPanel; 
import javax.swing.border.EmptyBorder; 
import java.awt.CardLayout; 
import java.awt.GridLayout; 
import javax.swing.JLabel; 
import java.awt.Font; 
import javax.swing.SwingConstants; 

public class Frame extends JFrame { 

/** 
* 
*/ 
private static final long serialVersionUID = 1L; 
private JPanel teamSelect; 

/** 
* Launch the application. 
*/ 
public static void main(String[] args) { 
    EventQueue.invokeLater(new Runnable() { 
     public void run() { 
      try { 
       JFrame frame = new JFrame(); 
       frame.setForeground(Color.WHITE); 
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
       frame.setLocation(new Point(100, 50)); 
       frame.setSize(1800, 900); 
       frame.setTitle("Hockey"); 

       frame.setVisible(true); 
      } catch (Exception e) { 
       e.printStackTrace(); 
      } 
     } 
    }); 
} 

/** 
* Create the frame. 
*/ 
public Frame() { 
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    setBounds(100, 100, 450, 300); 
    teamSelect = new JPanel(); 
    teamSelect.setBorder(new EmptyBorder(5, 5, 5, 5)); 
    setContentPane(teamSelect); 
    teamSelect.setLayout(new CardLayout(0, 0)); 

    JPanel divisionGrid = new JPanel(); 
    teamSelect.add(divisionGrid, "name_3885325667274"); 
    divisionGrid.setLayout(new GridLayout(2, 2, 0, 0)); 

    JPanel metroDivision = new JPanel(); 
    divisionGrid.add(metroDivision); 
    metroDivision.setLayout(new BorderLayout(0, 0)); 

    JLabel lblMetropolitanDivision = new JLabel("Metropolitan Division"); 
    lblMetropolitanDivision.setHorizontalAlignment(SwingConstants.CENTER); 
    lblMetropolitanDivision.setFont(new Font("Eras Bold ITC", Font.PLAIN, 16)); 
    metroDivision.add(lblMetropolitanDivision, BorderLayout.NORTH); 

    JPanel atlanticDivision = new JPanel(); 
    divisionGrid.add(atlanticDivision); 
    atlanticDivision.setLayout(new BorderLayout(0, 0)); 

    JLabel lblAtlanticDivision = new JLabel("Atlantic Division"); 
    lblAtlanticDivision.setHorizontalAlignment(SwingConstants.CENTER); 
    lblAtlanticDivision.setFont(new Font("Eras Bold ITC", Font.PLAIN, 16)); 
    atlanticDivision.add(lblAtlanticDivision, BorderLayout.NORTH); 

    JPanel centralDivision = new JPanel(); 
    divisionGrid.add(centralDivision); 
    centralDivision.setLayout(new BorderLayout(0, 0)); 

    JLabel lblNewLabel = new JLabel("Central Division"); 
    lblNewLabel.setFont(new Font("Eras Bold ITC", Font.PLAIN, 16)); 
    lblNewLabel.setHorizontalAlignment(SwingConstants.CENTER); 
    centralDivision.add(lblNewLabel, BorderLayout.NORTH); 

    JPanel pacificDivision = new JPanel(); 
    divisionGrid.add(pacificDivision); 
    pacificDivision.setLayout(new BorderLayout(0, 0)); 

    JLabel lblNewLabel_1 = new JLabel("Pacific Division"); 
    lblNewLabel_1.setFont(new Font("Eras Bold ITC", Font.PLAIN, 16)); 
    lblNewLabel_1.setHorizontalAlignment(SwingConstants.CENTER); 
    pacificDivision.add(lblNewLabel_1, BorderLayout.NORTH); 
} 

答えて

-1

new Frame(); 

によって

new JFrame(); 

を交換し、setVisible(true)pack()を呼び出します。

System.out.println()を追加するか、デバッガを使用してコードをステップ実行すれば、この単純な間違いを見つけることができます。デバッガは素晴らしいツールです。これを使って。

+0

downvoterに:あなたのdownvoteを説明する気に?あなたは慎重に質問を読んでいないと思います。 –

関連する問題