Я проделал тонну копаний, и я просто не могу понять, что я делаю здесь неправильно.Я создаю один кадр и пытаюсь добавить к нему две сеточные панели.Каждая панель настроена с разметкой сетки из 1 строки и 3 столбцов.
Но вот что я вижу, когда запускаю ее:
Я знаю, что мне не хватает чего-то простого, ноМне трудно понять, что именно.Извините за этот вопрос, но сейчас я в растерянности.Любая помощь будет принята с благодарностью!
public class MadewellSalesTaxWindow extends JFrame
{
private JFrame frame; // the frame
private JPanel panel1; //top panel
private JPanel panel2; //bottom panel
private JLabel messageLabel; // label right of field
private JTextField TaxTextField; // label for text field
private JButton calcCountyButton; // these are the button names
private JButton calcStateButton;
private JButton calcTotalButton;
private final int WINDOW_WIDTH = 500; // window width
private final int WINDOW_HEIGHT = 150; // window height
private final double STATE_TAX = 0.065;
private final double COUNTY_TAX = 0.03;
String pattern = "###,###,###,###.##";
DecimalFormat decimalFormat = new DecimalFormat(pattern); // output formatting
public MadewellSalesTaxWindow()
{
// window title
setTitle("Sales Tax Calculator");
// window size
setSize(WINDOW_WIDTH, WINDOW_HEIGHT);
// clarify what occurs upon window closing
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// call frame constructor
frame = new JFrame();
// calls the function that builds the panels
buildPanel();
// adds the panels to the frame
add(panel1);
add(panel2);
// displays the window (very important)
setVisible(true);
}
private void buildPanel()
{
// this label gives the user instructions
messageLabel = new JLabel("Enter total sales for the month: $");
// 10 characters should be enough for monthly sales unless the company is massive
TaxTextField = new JTextField(10);
// creates the buttons
calcCountyButton = new JButton("Calculate County Tax");
calcStateButton = new JButton("Calculate State Tax");
calcTotalButton = new JButton("Calculate Total Sales Tax");
// adds action listeners to each of the buttons
calcCountyButton.addActionListener(new CountyButtonListener());
calcStateButton.addActionListener(new StateButtonListener());
calcTotalButton.addActionListener(new TotalButtonListener());
// create 2 new panels
panel1 = new JPanel();
panel2 = new JPanel();
// add the appropriate elements to the top panel and the bottom panel
panel1.add(messageLabel);
panel1.add(TaxTextField);
panel2.add(calcCountyButton);
panel2.add(calcStateButton);
panel2.add(calcTotalButton);
// set the layouts for the panels so that they display correctly
panel1.setLayout(new GridLayout(1,3));
panel2.setLayout(new GridLayout(1,3));
}