用我的main方法链接我的Jinterface

时间:2015-02-24 16:52:15

标签: java

在我的程序中我有一个Register类,其中main方法所在,我有一个接口所在的jFrame类。我想将这两个链接在一起但是当我尝试将所有内容从main方法复制到它的框架方法给了我错误。我如何将这些链接在一起?

他们分为两类:

public static void main(String[] args) {

    Register r=new Register();
    Kund k=new Normal();
    k.setBelopp(100);
    k.setDatum("20:15");
    r.regKund(k);
    k=new Student();
    k.setBelopp(50);
    k.setDatum("20:16");
    if(r.beraknaSaldo()>=50)
        r.regKund(k);
    else
        System.out.println("Det finns för tillfället inga pengar i kasssan, studenten registreras inte.");
    k=new Foretag();
    k.setBelopp(0);
    k.setDatum("20:17");
    k.setLopnummer(r.getLopnummer());
    r.regKund(k);
    System.out.println("Kassan har nu "+r.beraknaSaldo()+" kr");
    k=new Student();
    k.setBelopp(50);
    k.setDatum("20:18");
    if(r.beraknaSaldo()>=50)
        r.regKund(k);
    else
        System.out.println("Det finns för tillfället inga pengar i kasssan, studenten registreras inte");
    k=new Normal();
    k.setBelopp(100);
    k.setDatum("20:19");
    r.regKund(k);
    k=new Student();
    k.setBelopp(50);
    k.setDatum("20:20");
    if(r.beraknaSaldo()>=50)
        r.regKund(k);
    else
        System.out.println("Det finns för tillfället inga pengar i kasssan, studenten registreras inte");
    k=new Foretag();
    k.setBelopp(0);
    k.setDatum("20:21");
    k.setLopnummer(r.getLopnummer());
    r.regKund(k);
    k=new Normal();
    k.setBelopp(100);
    k.setDatum("20:22");
    r.regKund(k);
    System.out.println(r.getLista());
    System.out.println("Kassan har nu "+r.beraknaSaldo()+" kr");




}

界面:

public class Frame extends Register {

    private JFrame frame;
    String[] KundLista = { "Normal", "Företag", "Student"};

    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    Frame window = new Frame();
                    window.frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
    public void windowClosing (WindowEvent e) {
        System.out.print("Programmet sparas och kommer nu stängas av");
        System.exit(1);
    }


    /**
     * Create the application.
     */
    public Frame() {
        initialize();
    }

    /**
     * Initialize the contents of the frame.
     */
    void initialize() {
        frame = new JFrame();
        frame.setBounds(100, 100, 450, 424);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().setLayout(null);


        listaString = getLista();
        TextArea textArea = new TextArea(listaString);
        textArea.setEditable(false);
        textArea.setBounds(0, 105, 440, 243);
        frame.getContentPane().add(textArea);
        textArea.append(listaString);
        textArea.setText(listaString);

        JTextPane textPane = new JTextPane();
        textPane.setEditable(false);
        textPane.setBounds(208, 354, 42, 22);
        frame.getContentPane().add(textPane);

        TextField textField = new TextField();
        textField.setBounds(120, 10, 102, 22);
        frame.getContentPane().add(textField);

        TextField textField_1 = new TextField();
        textField_1.setEditable(false);
        textField_1.setBounds(255, 10, 102, 22);
        frame.getContentPane().add(textField_1);

        Label label = new Label("Saldo:");
        label.setBounds(162, 354, 40, 22);
        frame.getContentPane().add(label);

        Label label_1 = new Label("Belopp:");
        label_1.setBounds(72, 10, 50, 22);
        frame.getContentPane().add(label_1);

        Label label_2 = new Label("Tid:");
        label_2.setBounds(228, 10, 22, 22);
        frame.getContentPane().add(label_2);

        Label label_3 = new Label("Bes\u00F6kartyp");
        label_3.setBounds(0, 77, 62, 22);
        frame.getContentPane().add(label_3);

        Label label_4 = new Label("Belopp");
        label_4.setBounds(122, 77, 62, 22);
        frame.getContentPane().add(label_4);

        Label label_5 = new Label("Tid");
        label_5.setBounds(246, 77, 22, 22);
        frame.getContentPane().add(label_5);

        Label label_6 = new Label("L\u00F6pnummer");
        label_6.setBounds(345, 77, 79, 22);
        frame.getContentPane().add(label_6);

        JComboBox comboBox = new JComboBox(KundLista);
        comboBox.setToolTipText("Välj vilken typ av Kund du är");
        comboBox.setRenderer(new MyComboBoxRenderer("Välj..."));  
        comboBox.setSelectedIndex(-1);
        comboBox.setBounds(171, 46, 97, 22);        
        frame.getContentPane().add(comboBox);


    }
}

class MyComboBoxRenderer extends JLabel implements ListCellRenderer {
    private String title;

    public MyComboBoxRenderer(String newTitle) {
        title = newTitle;
    }

    @Override
    public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean hasFocus) {
        if (index == -1 && value == null) setText(title );
        else setText(value.toString());
        return this;
    }
}

0 个答案:

没有答案