Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Applet java HELP

    Salve a tutti, sono disperata...
    Venerdì ho un esame e devo sviluppare ciò:
    Gestione conto corrente bancario
    * implementare un'applicazione java per la gestione di un conto bancario
    * l'applicazione sarà formata da due classi
    * la class Conto che si occuperà della parte di calcolo
    * l'Applet parte grafica e gestione degli eventi
    * ogni evento dovrà essere gestito da ogni sottoclasse di applicazione
    * L'interfaccia è costituita da: JTextArea, JTextField, 3 pulsanti che gestiranno il prelievo,
    * il deposito e la visualizzazione dell'estratto conto.
    * L'applet inserito in una pagina HTML formattata
    * Lo studente potrà aggiungere caratteristiche migliorative alla veste grafica e funzionale dell'apllet
    * ferme restando le specifiche date
    * commentare il codice scritto

    Questo è quello che sono riuscita a fare ma è un po scarno e non so come fare ad esempio a farmi stampare la data quando clicco su estratto e listare tutte le operazioni una sopra l'altra :

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

    public class Applicazione extends JApplet implements ActionListener
    {

    JTextArea testo;
    JTextField txt1;
    JButton btnPrelievo, btnDeposito, btnVisualizza;
    Conto conto;

    public void init()
    {
    conto = new Conto();

    // JTextArea
    testo = new JTextArea(20, 5);
    JScrollPane textScroller = new JScrollPane(testo);

    testo.setEditable(false); //testo non modificabile
    testo.setLineWrap(true); //arrivato alla fine della riga va a capo
    testo.setWrapStyleWord(true); //spezza la riga in base alle parole

    //JTextField
    txt1 = new JTextField("");

    // JButton
    btnPrelievo = new JButton("Prelievo");
    btnPrelievo.setActionCommand("p1");
    btnPrelievo.addActionListener(this);

    btnDeposito = new JButton("Deposito");
    btnDeposito.setActionCommand("p2");
    btnDeposito.addActionListener(this);

    btnVisualizza = new JButton("Visualizza conto");
    btnVisualizza.setActionCommand("p3");
    btnVisualizza.addActionListener(this);

    // JPanel
    JPanel p = new JPanel();
    p.setLayout(new BoxLayout(p, BoxLayout.X_AXIS));
    p.add(btnPrelievo); p.add(btnDeposito); p.add(btnVisualizza);

    Container c = getContentPane();
    c.setLayout(new BorderLayout());
    c.add(BorderLayout.SOUTH, p);
    c.add(BorderLayout.CENTER, textScroller);
    c.add(BorderLayout.NORTH, txt1);
    }


    public void actionPerformed(ActionEvent info)
    {
    String cmd = info.getActionCommand();

    if (cmd.equals("p1"))
    {
    double n;
    String conv = txt1.getText();
    n = Double.parseDouble(conv);

    conto.prelievo(n);
    }

    if (cmd.equals("p2"))
    {
    double i;
    String conv = txt1.getText();
    i = Double.parseDouble(conv);

    conto.deposito(i);
    }

    if (cmd.equals("p3"))
    {
    double l = conto.visualizza();
    String s = String.valueOf(l);

    testo.setText(s);

    }
    }
    }

    class Conto
    {

    double estratto;

    public Conto()
    {
    estratto = 0;
    }

    public void prelievo(double n1)
    {
    estratto = estratto - n1;
    }


    public void deposito(double n2)
    {
    estratto = estratto + n2;
    }

    public double visualizza()
    {
    return estratto;
    }
    }

    VI CHIEDO GENTILMENTE DI AIUTARMI...ma vi ringrazio a prescindere!!!!

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,466

    Moderazione

    Ho modificato il titolo della discussione per renderlo un po' più rappresentativo del contenuto.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Grazie alka, sono proprio un disastro.......nemmeno il titolo ho saputo scegliere :rollo:

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Non è espressamente richiesto, però, per incominciare, farei in modo di poter passare una stringa simil-data all'operazione che fai sul conto.

    Nella classe conto aggiungerei una stringa (o uno stringbuffer) che tenga traccia dello storico delle operazioni ed un metodo toString che ritorni l'estratto conto completo.
    Ciao
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Nella classe conto aggiungerei una stringa (o uno stringbuffer) che tenga traccia dello storico delle operazioni ed un metodo toString che ritorni l'estratto conto completo.
    ...Grazie Andrea...
    ahimè il problema è proprio il codice, non so proprio come implementarlo...

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Qualcosa del genere...

    codice:
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    
    class Conto {
      private double totale;
      private String storico;
    
      private String ultima;
    
      public Conto(String data, double value) {
        totale = value;
        ultima = data +" "+ value;
        storico = "";
      }
    
      public Conto() {
        this("", 0);
      }
    
      public void deposito(String data, double value) {
        storico +=data+" accredito "+value+"\n";
        totale +=value;
        ultima = data + " accredito " + value;
      }
    
      public void prelievo (String data, double value) {
        storico +=data+" prelevamento "+value+"\n";
        totale -= value;
        ultima = data + " prelevamento "+value;
      }
    
      public String ultima() {
        return ultima;
      }
    
      public String toString() {
        return "\n\nESTRATTO CONTO\n"+storico+"\n\n"+"Saldo finale: "+totale+"\n*********\n\n";
      }
    }
    
    
    public class graphicConto extends JFrame implements ActionListener { //fagli estendere JApplet
    
      JButton deposito = new JButton("Accredito");
      JButton prelievo = new JButton("Prelevamento");
      JButton estratto = new JButton("Lista Movimenti");
      
      JLabel datal = new JLabel("Data Operazione:");
      JLabel importo = new JLabel("Importo");
    
      JTextField data = new JTextField(12);
      JTextField valuta = new JTextField(10);
      JTextArea operazioni = new JTextArea();
      
      Conto c;
    
      public void actionPerformed (ActionEvent ae) {
        if (ae.getSource().equals(deposito)) {
          c.deposito(data.getText(), Double.parseDouble(valuta.getText()));
          operazioni.append(c.ultima()+"\n");
        }
        if (ae.getSource().equals(prelievo)) {
          c.prelievo(data.getText(), Double.parseDouble(valuta.getText()));
          operazioni.append(c.ultima()+"\n");
        }
        if (ae.getSource().equals(estratto)) {
          operazioni.append(c.toString()+"\n");
        }
      }
      
      public graphicConto() {
        super("Manage Conto"); //commenta questa, serve solo a dare il titolo al JFrame, nelle JApplet non serve
        this.getContentPane().setLayout(new BorderLayout());
        JPanel top = new JPanel();
        JPanel top1 = new JPanel();
        JPanel top2 = new JPanel();
        
        top1.add(datal); top1.add(data); top1.add(importo); top1.add(valuta);
        top2.add(deposito); top2.add(prelievo); top2.add(estratto);
        
        top.setLayout(new GridLayout(2,1));
        top.add(top1); top.add(top2);
        
        deposito.addActionListener(this);
        prelievo.addActionListener(this);
        estratto.addActionListener(this);
        
        this.getContentPane().add(top, BorderLayout.NORTH);
        this.getContentPane().add(operazioni, BorderLayout.CENTER);
        c = new Conto();
        
        //Quello che segue è solo per operare nel JFrame
        //nella JApplet non serve e lo devi commentare.
        this.setSize(600, 400);
        this.setVisible(true);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      }
      
      //il main di una JApplet dovrebbe dare informazioni a riguardo
      //nel caso in cui qualcuno provasse a lanciare da console l'applet
      //In questo caso invece inizializzo un oggetto di questa classe per fare demo.
      
      public static void main (String[] args) {
        graphicConto gc = new graphicConto();
      }
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  7. #7
    Grazie Andrea , mi metto subito al lavoro...ti farò sapere

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.