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

    interfaccie grafiche java

    salve a tutti,
    mi sono appena scritta a questo forum e spero di trovarmi bene, sto iniziando a studiare java, solo che sto trovando alcune difficoltà perchè il prof. corre a lezione( cmq non sto qui a raccontarvi i miei problemi), ho scritto tre classi che posterò qui sotto funzionanti una che somma due numeri e una che divide, e poi la classe main che svolge le due operazioni, ora il problema è che il prof. ci ha lasciato un solo esempio senza commentarlo di una finestra java poco utile in quanto non riesco a farci niente. Volevo che l'output che mi compare nella console di eclipse mi uscisse nella finestra java al posto del "buona lezione", ma non capisco come richiamare la JLabel. Posto il codice:

    Questa è la classe somma
    codice:
    package oggetti;
    
    public class Somma {
    
    	private int a;
    	private int b;
    	int c;
    	public int getA() {
    		return a;
    	}
    	public void setA(int a) {
    		this.a = a;
    	}
    	public int getB() {
    		return b;
    	}
    	public void setB(int b) {
    		this.b = b;
    	}
    	
    	public void somma(){
    		c= a+b;
    		System.out.println("la somma dei due numeri e'"+c);
    	
    	}
    }
    questa Divisione

    codice:
    package oggetti;
    
    public class Divisione {
    	
    		private int x;
    		
    		private int y;
    		
    		int z;
    		
    		public int getX() {
    			return x;
    		}
    		public void setX(int x) {
    			this.x = x;
    		}
    		public int getY() {
    			return y;
    		}
    		public void setY(int y) {
    			this.y = y;
    		}
    		
    		public void divisione(){
    			z= x/y;
    			System.out.println("la divisione dei due numeri e'"+z);
    		
    		}
    }
    questo il main che ho chiamato Inputab

    codice:
    package istanze;
    
    import oggetti.Somma;
    import oggetti.Divisione;
    
    public class Inputab {
    
    	
    	public static void main(String[] args) {
    	
    		Somma prima = new Somma();
    		prima.setA(5);
    		prima.setB(6);
    		
    		Divisione seconda = new Divisione();
    		seconda.setX(8);
    		seconda.setY(2);
    		
    	
    		
    		System.out.println("il primo numero è "+prima.getA());
    		System.out.println("il secondo numero è"+prima.getB());
    		prima.somma();
    	
    		System.out.println("il terzo numero è "+seconda.getX());
    		System.out.println("il quarto numero è"+seconda.getY());
    		seconda.divisione();
    	
    	
    	}
    
    }
    ora io mi ritrovo questo inutilissimo esempio senza commento ecc...come posso utilizzare quella jLabel?

    codice:
     import javax.swing.*;
     import java.awt.*;
    
       public class Application
         {
          public static void main(String args[])
             {
                JFrame win;
                win = new JFrame(“Prima finestra”);
                Container c = win.getContentPane();
                c.add(new JLabel(“Buona Lezione”));
                win.setSize(100,100);
                win.setDefaultCloseOperation
                (JFrame.EXIT_ON_CLOSE);
                win.setVisible(true);
              }
           }
    PS come buona norma ho cercato domande simili, alcune ne ho trovate ma trovandomi all'inizio non ci ho capito molto...perciò magari scusate se mi ripeto...grazie

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Il risultato delle operazioni lo salvi in una variabile e lo stampi sulla console, ma non hai messo un getter per recuperare quel valore!

    Puoi fare in due modi. O metti il getter di c:

    codice:
    public int getC() {
        return c;
    }
    oppure fai restituire il risultato direttamente al metodo somma()

    codice:
    public int somma() {
        return a + b;
    }
    (sbaglio o ti avevo già suggerito questi approcci?)

    Una volta che hai qualcosa che ti da il risultato, è banale costruirsi la label:

    codice:
    Somma s = new Somma();
    s.setA(5);
    s.setB(6);
    
    JLabel label = new JLabel("Il risultato di " + s.getA() + " + " + s.getB() + " e\' " + s.getC());
    c.add(label);
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    (cmq per quanto riguarda che mi avevi già spiegato, avevo salutato tutti in quanto mi ero appena iscritta cmq avevo anche detto che qualcosa avevo trovato di simile ma non stavo capendo molto )

    Ho capito quello che mi vuoi dire, ma io cosi come dici, mi elimino una classe. Mi spiego meglio.
    Io ho un package dopo creo l'oggetto (somma) un altro package dove creo delle istanze di somma (Inputab) e un altro package Interfaccia grafica dove faccio la finestra.
    Come mi hai spiegato tu elimino la classe Inputab? e metto tutto in "finestra"? ho capito bene?
    (se si, e volessi lasciare tutto cosi separato è impossibile? o sto ragionando male?)....xk ho letto altre discussioni che si avvicinavano e parlavano del fatto di non utilizzare più di un main in un programma.

  4. #4
    perchè io ho fatto ora, come mi hai detto te, funziona! ,hai perfettamente ragione.
    Ma io volevo tenere tutto separato

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.