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

    evento genera oggetto on JButton

    Salve a tutti.
    Ho realizzato un'interfaccia grafica, tramite swing, con due JTextField (una "Nome" e l'altra "Cognome") ed un JButton ("Genera cliente"): devo fare in modo, adesso, che al click del mouse venga richiamata la classe Cliente per la creazione di un oggetto che abbia come proprietà "nome" il testo digitato nel primo TextField, e come "cognome" il testo del secondo TextField.
    Ho provato con la generazione di eventi, ma sono alle prime armi e trovo parecchie difficoltà...qualcuno potrebbe aiutarmi?

  2. #2
    Questo è il codice:
    codice:
    public class Cliente {
    
    	String nominativo = new String();
    	String telefono = new String();
    	
    	//Costruttore per l'inizializzazione di un oggetto Cliente
    	public Cliente(){
    		nominativo = "NUL";
    		telefono = "NUL";
    	}
    	
    	// Metodo per l'inserimento del campo Nominativo
    	public void setNominativo(String nomCogn){
    		nominativo = nomCogn;
    	}
    	
    	// Metodo per l'inseriemnto del campo Telefono
    	public void setTelefono(String numTel){
    		telefono = numTel;
    	}
    		
    }
    codice:
    import java.util.*;
    import java.io.*;
    
    public class Spettacolo{
    	// variabili (tipi primitivi)
    	int nroPosti = 100;
    	int nroMaxAttesa;
    	int nroPrenotazioni = 0;
    	
    	// ArrayList per la memorizzazione di oggetto di tipo Cliente
    	ArrayList<Cliente> arrayPrenotazioni = new ArrayList<Cliente>();
    	ArrayList<Cliente> arrayAttesa = new ArrayList<Cliente>();
    	
    
    	// Costruttore per l'inizializzazione di un oggetto di tipo Spettacolo
    	public Spettacolo(int valMaxAttesa){
    		nroMaxAttesa = valMaxAttesa;
    	}
    	
    
    	// Metodo "libero" che restituisce T se vi è ancora disponibilità di posti
    	public boolean libero(){
    		boolean aux_libero = false; //variabile ausiliaria per l'assegnazione del risultato del metodo
    		
    		if (!arrayPrenotazioni.isEmpty()){ //verifico se la lista prenotazioni è non vuota
    			if (nroPosti-arrayPrenotazioni.size() > 0) //verifico se vi è ancora disponibilità di posti
    				aux_libero = true;
    		}
    		else
    			aux_libero = true;
    		return(aux_libero); //assegno al metodo un valore di outupt corrispondente al valore della variabile ausiliaria
    	}
    	
    	
    	public void prenota(Cliente client){
    		boolean aux_prenota;
    		
    		aux_prenota = this.libero();
    		if(aux_prenota){
    			arrayPrenotazioni.add(client);
    			nroPrenotazioni++;
    		}
    		else
    			if (arrayAttesa.size() < nroMaxAttesa)
    				arrayAttesa.add(client);
    			else System.out.println("Liste di prenotazione e di attesa piene.");
    	}
    	
    	
    	public int trova(Cliente client){
    		int aux_trova = -1;
    		
    		if(arrayPrenotazioni.contains(client)) aux_trova = 0;
    		else
    			if(arrayAttesa.contains(client)) aux_trova = 1;
    		return(aux_trova);
    	}
    	
    
    	public void disdici(Cliente client){
    		if(arrayPrenotazioni.contains(client)){
    			if(!arrayAttesa.isEmpty()){
    				arrayPrenotazioni.remove(arrayPrenotazioni.indexOf(client));
    				arrayPrenotazioni.add(arrayAttesa.get(0));
    				arrayAttesa.remove(0);
    			}
    			else{
    				arrayPrenotazioni.remove(arrayPrenotazioni.indexOf(client));
    				nroPrenotazioni--;
    			}
    		}
    		else
    			if(arrayAttesa.contains(client)) arrayAttesa.remove(arrayAttesa.indexOf(client));
    			else System.out.println("Cliente non presente in nessuna lista.");
    	}
    	
    	
    	public boolean incompleto(Cliente client){
    		boolean aux_incompleto = false;
    		
    		if((arrayPrenotazioni.contains(client)) && (arrayAttesa.contains(client)))	aux_incompleto = true;
    		return(aux_incompleto);
    	}
    
    	public void salvaDati() throws IOException{
    		FileWriter f = new FileWriter("fileoutput.txt"); 
    		PrintWriter uscita = new PrintWriter(f); 
    		uscita.println("LISTA DELLE PRENOTAZIONI:");
    		if (!arrayPrenotazioni.isEmpty()){
    			for(int i=0; i < arrayPrenotazioni.size(); i++){
    				uscita.print((i+1)+". ");
    				uscita.print(arrayPrenotazioni.get(i).nominativo);
    				uscita.print(" ");
    				uscita.println(arrayPrenotazioni.get(i).telefono);
    			}
    		}
    		else System.out.println("Vuota.");
    		uscita.println("LISTA DI ATTESA:");
    		if (!arrayAttesa.isEmpty()){
    			for(int i=0; i < arrayAttesa.size(); i++){
    				uscita.print((i+1)+". ");
    				uscita.print(arrayAttesa.get(i).nominativo);
    				uscita.print(" ");
    				uscita.println(arrayAttesa.get(i).telefono);
    			}
    		}
    		else System.out.println("Vuota");
    	        uscita.close();		
    	}
    	
    }
    codice:
    import java.awt.*;
    import javax.swing.*;
    
    public class Index{
    
    	public static void main(String[] args) {
    				
    		JFrame base = new JFrame("Gestione Spettacolo");
    		base.setVisible(true);
    		base.setBounds(000,000,490,350);
    		base.setResizable(false);
    		base.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		
    		JPanel p1 = new JPanel();
    		base.add(p1);
    		p1.setVisible(true);
    		p1.setBounds(0,0,490,350);
    		
    		JLabel l1 = new JLabel("PRENOTAZIONI");
    		p1.add(l1);
    		l1.setVisible(true);
    		l1.setBounds(10,5,150,10);
    		
    		JTextField txt1 = new JTextField("Nome");
    		p1.add(txt1);
    		txt1.setVisible(true);
    		txt1.setBounds(10,80,230,35);
    		
    		JTextField txt2 = new JTextField("Cognome");
    		p1.add(txt2);
    		txt2.setVisible(true);
    		txt2.setBounds(250,80,230,35);
    
    		JTextField txtAttesa = new JTextField("N° max clienti in lista d'attesa");
    		p1.add(txtAttesa);
    		txtAttesa.setVisible(true);
    		txtAttesa.setBounds(10,40,215,30);
    
    		JButton b1 = new JButton("Prenota");
    		p1.add(b1);
    		b1.setVisible(true);
    		b1.setBounds(10,120,150,40);
    		
    		JButton b2 = new JButton("Trova");
    		p1.add(b2);
    		b2.setVisible(true);
    		b2.setBounds(230,120,90,40);
    		
    		JButton b3 = new JButton("Disdici");
    		p1.add(b3);
    		b3.setVisible(true);
    		b3.setBounds(330,120,150,40);
    		
    		JButton b4 = new JButton("Liberi");
    		p1.add(b4);
    		b4.setVisible(true);
    		b4.setBounds(10,170,230,40);
    		
    		JButton b5 = new JButton("Incompleti");
    		p1.add(b5);
    		b5.setVisible(true);
    		b5.setBounds(250,170,230,40);
    		
    		JButton b6 = new JButton();
    		p1.add(b6);
    		b6.setVisible(true);
    		b6.setEnabled(false);
    		b6.setBounds(170,120,50,40);
    		
    		JButton b7 = new JButton("Genera");
    		p1.add(b7);
    		b7.setVisible(true);
    		b7.setBounds(225,40,90,30);
    		
    		JButton b8 = new JButton("SALVA");
    		p1.add(b8);
    		b8.setVisible(true);
    		b8.setBounds(185,225,120,40);		
    	}
    
    }

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.