0

我想知道是否有必要创建一个 JFrame 对象,或者我可以简单地创建一个 LoanCalculator 对象来调用 JFrame 方法吗?在我之前完成的 GUI 代码中,创建一个 JFrame 对象(例如 JFrame frame = new JFrame())或类对象可以工作并且程序运行良好。

究竟有什么区别?创建一个 JFrame 对象而不是一个类有什么意义?(我的问题唯一相关的部分是我的主类中的代码)

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class LoanCalculator extends JFrame{
        private JButton jbtCompute = new JButton("Compute Payment");

    public LoanCalculator(){
        JPanel panel1 = new JPanel();
            panel1.setLayout(new GridLayout(5, 2));
        panel1.add(new JLabel("Annual Interest Rate"));
        panel1.add(new JTextField(8));
        panel1.add(new JLabel("Number of Years"));
        panel1.add(new JTextField(8));
        panel1.add(new JLabel("Loan Amount"));
        panel1.add(new JTextField(8));
        panel1.add(new JLabel("Monthly Payment"));
        panel1.add(new JTextField(8));
        panel1.add(new JLabel("Total Payment"));
        panel1.add(new JTextField(8));

        JPanel panel2 = new JPanel();
        panel2.setLayout(new FlowLayout(FlowLayout.RIGHT));
        panel2.add(jbtCompute);
    }

    public static void main(String[] args){
        LoanCalculator frame = new LoanCalculator();

        frame.setTitle("Loan Calculator");
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setResizable(false);
        frame.setVisible(true);
    }
}
4

1 回答 1

0

如果LoanCalculator是 的子类JFrame,则它继承属于的所有方法和变量JFrame(以及您添加到LoanCalculator自己的任何方法和变量)。凡是你能对一个普通人做的事,你就能对一个JFrame人做LoanCalculator

您粘贴的代码对我来说看起来不错(除了您从未添加panel1或添加panel2到框架的 contentPane 中)。

于 2012-04-08T01:42:42.253 回答