Visualizzazione dei risultati da 1 a 6 su 6

Hybrid View

  1. #1
    Scusa sono nuovo del forum dimmi se così può bastare,
    non ho inviato le classi complete.

    public class PanelOperazioni extends JPanel {
    //bottoni operazionali
    private JButton più = new JButton("+");
    private JButton meno = new JButton("-");
    private JButton per = new JButton("x");
    private JButton divisione = new JButton("/");

    //risultato
    static int a=1;
    static int b=0;

    //variabile che stabilisce qual'è l'operazione in
    static int i=0;

    //cotruttore
    public PanelOperazioni()
    {
    this.setLayout(new GridLayout(4,1));
    addBO(più);
    addBO(meno);
    addBO(per);
    addBO(divisione);

    più.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    if(meno.isEnabled()==true && per.isEnabled()==true && divisione.isEnabled()==true)
    {
    più.setEnabled(false);
    risultato.setText("");
    i=0;
    a=Integer.valueOf(risultato.getText());
    }
    else
    {

    }


    public class PanelTB extends JPanel {
    //oggetti di riferimento del pannello
    static JLabel risultato = new JLabel("ciao");
    private JButton uguale = new JButton("=");


    public PanelTB()
    {
    this.setPreferredSize(new Dimension(250, 70));
    addJL(risultato);
    addB(uguale);
    risultato.setLocation(10,10);
    risultato.setPreferredSize(new Dimension(240, 70));
    risultato.setOpaque(true);
    risultato.setBackground(Color.yellow);
    this.setVisible(true);

    uguale.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    b=Integer.valueOf(risultato.getText());
    switch(i)
    {
    case 0:{risultato.setText(operazionePiù(a,b));break;}
    case 1:{risultato.setText(operazioneMeno(a,b));break;}
    case 2:{risultato.setText(operazionePer(a,b));break;}
    case 3:{risultato.setText(operazioneDiviso(a,b));break; }
    }

    }
    });
    }

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da nicholas1208 Visualizza il messaggio
    Scusa sono nuovo del forum dimmi se così può bastare,
    non ho inviato le classi complete.
    Sì, ora si vede di più. Ma come ho detto, e lo ripeto, campi static sono "il male" (se non per design o architetture ben precise e con motivazioni valide).
    E comunque, perché vuoi fare proprio due classi "pannello" separate? Visto che comunque le nozioni a livello di design delle classi non le hai ancora molto, scegli (almeno per ora) la strada più semplice: fai tutto all'interno di una unica classe. Questo NON vuol dire che non puoi usare più pannelli ... semplicemente non separare in modo radicale le cose con il dubbio poi di non sapere come "collegare" nel modo appropriato le due entità.
    Ultima modifica di andbin; 03-01-2017 a 16:15
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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 © 2026 vBulletin Solutions, Inc. All rights reserved.