Esercizi Swing
Calcolatrice Progetto: Realizzazione di una calcolatrice. La calcolatrice dovrà avere diverse interfacce
Esercizio: Il Mercato Realizzare un’applicazione Java che permette a un produttore di un mercato locale di aggiungere prodotti di prima necessità sulla sua bancarella. Il produttore ha a disposizione un’interfaccia grafica con i prodotti da inserire sulla bancarella. Mentre i prodotti vengono inseriti i clienti, desiderosi di prodotti freschi, li consumano. Il produttore può mettere in vendita Pomodoro, Basilico e Patate
Esercizio: Il Mercato Progettazione della grafica: Frame Principale (BorderLayout) Jpanel 1: Contiene Label di presentazione Jpanel 2 (GridLayout(3,3)): Contiene i 3 bottoni per la generazione e 3 text area corrispondenti dove verrà scritto il resoconto dei prodotti in bancarella
Esercizio: Il Mercato Bancarella Cliente MainJFrame ProduttoreListener contiene i prodotti disponibili Cliente Periodicamente compra un prodotto dalla bancarella MainJFrame Visualizza l’interfaccia Associa il ProduttoreListener ai propri bottoni ProduttoreListener Cattura gli eventi generati dai bottoni Aggiorna lo stato della bancarella Aggiorna il MainJFrame
Esercizio: Il Mercato Il Main dell’applicazione gui=new MainJFrame(); m=new Bancarella(); gui=new MainJFrame(); p=new ProduttoreListener(m, gui); Cliente c=new Cliente(); SwingUtilities.invokeLater(new Runnable() { public void run() { gui.initGUI(p); } }); while(true){ Thread.sleep(30000); c.compra(m); //E’ sempre bene aggiornare la GUI all'interno dell'EDT gui.updateGUI(m.getNumeroPomodori(), m.getNumeroBasilico(), m.getNumeroPatata());
Assicurazione (un programma da rendere più robusto) Un’assicurazione desidera creare un archivio elettronico in grado di raccogliere informazioni sulle automobili e sui loro proprietari. Si implementi una classe Cliente, avente il nominativo (stringa) come variabile d’istanza; una classe Automobile avente come variabili d’istanza il numero di targa della vettura (intero) e un riferimento al proprietario della classe Cliente. Si implementi, infine, la classe Archivio.