Announcement

Collapse
No announcement yet.

Ausgabe über ein Listenfeld

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ausgabe über ein Listenfeld

    Hallo alle zusammen, ich habe vor einen Darlehensrechner zu programmieren (oder muss )

    und will die Ausgabe in einem Listenfeld vornehmen,
    ich habe bisher folgenden code geschrieben:

    ================================================== ====
    package paketDarlehensrechner;

    import java.awt.BorderLayout;
    import java.awt.geom.Arc2D.Double;

    import javax.swing.JPanel;
    import javax.swing.JFrame;
    import javax.swing.JButton;
    import javax.swing.JLabel;
    import javax.swing.JTextField;
    import java.awt.Dimension;
    import java.awt.Rectangle;
    import javax.swing.JTextPane;
    import java.awt.Font;
    import javax.swing.JList;
    import java.awt.Color;
    import java.awt.SystemColor;

    public class Darlehensrechner extends JFrame {

    private JPanel jContentPane = null;
    private JButton btBerechnen = null;
    private JButton tbZurücksetzen = null;
    private JLabel jLabel = null;
    private JLabel jLabel1 = null;
    private JLabel jLabel2 = null;
    private JLabel jLabel3 = null;
    private JTextField tfBetrag = null;
    private JTextField tfZinssatz = null;
    private JTextField tfDauer = null;
    private JTextField tfRate = null;
    private JLabel jLabel31 = null;
    private JTextField tfausgabe = null;
    /**
    * This is the default constructor
    */
    public Darlehensrechner() {
    super();
    initialize();
    }

    /**
    * This method initializes this
    *
    * @return void
    */
    private void initialize() {
    this.setSize(597, 380);
    this.setContentPane(getJContentPane());
    this.setTitle("Darlehensrechner");
    this.setVisible(false);
    }

    /**
    * This method initializes jContentPane
    *
    * @return javax.swing.JPanel
    */
    private JPanel getJContentPane() {
    if (jContentPane == null) {
    jLabel31 = new JLabel();
    jLabel31.setBounds(new Rectangle(176, 24, 233, 49));
    jLabel31.setFont(new Font("Arial Black", Font.PLAIN, 18));
    jLabel31.setForeground(Color.black);
    jLabel31.setText("Darlehensrechner");
    jLabel2 = new JLabel();
    jLabel2.setBounds(new Rectangle(203, 224, 180, 35));
    jLabel2.setText("Rückzahlungsdauer in Jahren:");
    jLabel1 = new JLabel();
    jLabel1.setBounds(new Rectangle(203, 163, 180, 35));
    jLabel1.setText("Nominalzinssatz p.a. in %:");
    jLabel = new JLabel();
    jLabel.setBounds(new Rectangle(203, 109, 180, 35));
    jLabel.setText("Darlehensbetrag in EUR:");
    jContentPane = new JPanel();
    jContentPane.setLayout(null);
    jContentPane.setToolTipText("");
    jContentPane.add(getBtBerechnen(), null);
    jContentPane.add(getTbZurücksetzen(), null);
    jContentPane.add(jLabel, null);
    jContentPane.add(jLabel1, null);
    jContentPane.add(jLabel2, null);
    jContentPane.add(getTfBetrag(), null);
    jContentPane.add(getTfZinssatz(), null);
    jContentPane.add(getTfDauer(), null);
    jContentPane.add(jLabel31, null);
    jContentPane.add(getTfausgabe(), null);
    }
    return jContentPane;
    }

    /**
    * This method initializes btBerechnen
    *
    * @return javax.swing.JButton
    */
    private JButton getBtBerechnen() {
    if (btBerechnen == null) {
    btBerechnen = new JButton();
    btBerechnen.setBounds(new Rectangle(212, 276, 163, 24));
    btBerechnen.setText("berechnen");
    btBerechnen.addActionListener(new java.awt.event.ActionListener() {
    public void actionPerformed (java.awt.event.ActionEvent e){


    double Betrag = java.lang.Double.parseDouble(tfBetrag.getText());
    double Zinssatz = java.lang.Double.parseDouble(tfZinssatz.getText()) ;
    double Dauer = java.lang.Double.parseDouble(tfDauer.getText());

    int Jahr=1;
    while ( Jahr <= Dauer) {System.out.println(Jahr); Jahr++; }
    {
    double Rate;
    Rate = (Betrag + Betrag/100*Zinssatz)/Dauer;

    double Restbetrag;
    Restbetrag = Betrag - Rate;

    }
    }
    });
    }


    return btBerechnen;
    }

    /**
    * This method initializes tbZurücksetzen
    *
    * @return javax.swing.JButton
    */
    private JButton getTbZurücksetzen() {
    if (tbZurücksetzen == null) {
    tbZurücksetzen = new JButton();
    tbZurücksetzen.setBounds(new Rectangle(410, 276, 163, 24));
    tbZurücksetzen.setText("zurücksetzen");
    tbZurücksetzen.addActionListener(new java.awt.event.ActionListener() {
    public void actionPerformed(java.awt.event.ActionEvent e) {


    leeren();

    }
    });
    }
    return tbZurücksetzen;
    }

    private void leeren()
    {
    //Es wird jeweils ein Leerstring in die Textfelder geschrieben
    tfBetrag.setText("");
    tfZinssatz.setText("");
    tfDauer.setText("");
    }


    private JTextField getTfBetrag() {
    if (tfBetrag == null) {
    tfBetrag = new JTextField();
    tfBetrag.setBounds(new Rectangle(400, 109, 180, 35));
    }
    return tfBetrag;
    }

    /**
    * This method initializes tfZinssatz
    *
    * @return javax.swing.JTextField
    */
    private JTextField getTfZinssatz() {
    if (tfZinssatz == null) {
    tfZinssatz = new JTextField();
    tfZinssatz.setBounds(new Rectangle(400, 163, 180, 35));
    }
    return tfZinssatz;
    }

    /**
    * This method initializes tfDauer
    *
    * @return javax.swing.JTextField
    */
    private JTextField getTfDauer() {
    if (tfDauer == null) {
    tfDauer = new JTextField();
    tfDauer.setBounds(new Rectangle(400, 224, 180, 35));
    }
    return tfDauer;
    }

    /**
    * This method initializes tfausgabe
    *
    * @return javax.swing.JTextField
    */
    private JTextField getTfausgabe() {
    if (tfausgabe == null) {
    tfausgabe = new JTextField();
    tfausgabe.setBounds(new Rectangle(28, 111, 153, 178));
    tfausgabe.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed (java.awt.event.ActionEvent e) {



    }
    });




    }
    return tfausgabe;
    }

    } // @jve:decl-index=0:visual-constraint="29,-33"
    ================================================== ====

    Aber i-wie habe ich keine Ahnung wie ich den Code weiterschreiben muss, damit ich die Ausgabe im Listenfeld hinkriege

    Meinen Code muss ich auch noch vervollständigen

    Wäre toll wenn mir jemand helfen könnte, bin bei Verbesserungsvorschläge ach verärgert =)

    mfg Kellrkind

  • #2
    Was ist den nun genau die Frage?

    Wie man Daten in eine JList bringt?

    Siehe hier

    http://java.sun.com/docs/books/tutor...ents/list.html

    Model vom DefaultListModel anlegen und dort addElement aufrufen.

    Wenn du nun mit Eclipse nicht die SWT Komponeten nutzt, sondern Java Swing würde ich mal einen Blick hierhin werfen

    http://www.netbeans.org/

    Dort ist ein grafischer GUI Builder für Oberflächen vorhanden. Der VE ist fehleranfällig und frisst jede Menge Speicher
    Christian

    Comment


    • #3
      Hmh , erstmal danke Christian, aber so ganz versteh ichs immer noch nicht =)

      ich versuch meine Fragestellung einfacher zu gestalten

      Wie kann ich das was ich hier berechnen lasse:

      private JButton getBtBerechnen() {
      if (btBerechnen == null) {
      btBerechnen = new JButton();
      btBerechnen.setBounds(new Rectangle(212, 276, 163, 24));
      btBerechnen.setText("berechnen");
      btBerechnen.setName("btBerechnen");
      btBerechnen.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed (java.awt.event.ActionEvent e){


      double Betrag = java.lang.Double.parseDouble(tfBetrag.getText());
      double Zinssatz = java.lang.Double.parseDouble(tfZinssatz.getText()) ;
      double Dauer = java.lang.Double.parseDouble(tfDauer.getText());

      for (double jahr = 1; jahr<=Dauer; jahr++) {

      Betrag = Betrag - ((Betrag*Zinssatz)/100);

      String newBetrag = java.lang.Double.toString(Betrag);


      }
      }
      });
      }


      return btBerechnen;
      }

      In ein Listenfeld ausgeben?

      der Code für die Listenfeldausgabe lautet:
      private JList getltAusgabe() {
      if (ltAusgabe == null) {
      ltAusgabe = new JList();
      ltAusgabe.setBounds(new Rectangle(25, 113, 156, 149));
      ltAusgabe.setName("ltAusgabe");
      }
      return ltAusgabe;
      }

      Was für ein Code fehlt mir da noch?
      mfg Madddin

      Comment


      • #4
        Was für ein Code fehlt mir da noch?
        Model vom DefaultListModel anlegen und dort addElement aufrufen.


        Was spricht dagegen, o.a. Link aufzurufen und zu lesen wie Daten in eine JList kommen?

        DefaultListModel deft=new DefaultListModel();
        deft.addElement("Hallo");
        deft.addElement("Welt");
        deine_JList.setModel(deft);

        Des Weiteren ist mir nicht klar, wieso es "Ausgabe" heisst, wenn dort das Ding überhaupt erst angelegt wird.

        Du solltest Erstellung der Komponenten und die Arbeit damit (lesen ändern einfügen usw.) trennen.

        Du kannst/solltest nicht jedesmal, wenn du einen Eintrag in die Liste machen willst, diese neu erstellen wollen?
        Zuletzt editiert von Christian Marquardt; 12.12.2008, 18:51.
        Christian

        Comment

        Working...
        X