Ciao a tutti, ho creato un programma in Java che mi permette di effettuare la somma, la sottrazione, la divisione e la moltiplicazione di due numeri, ed infine effettuare un reset.
L'ho fatto con l'interfaccia grafica, ma il problema è che non ho proprio capito come spostare i JButton, JTextField, JLabel ecc a mio piacimento.
Infatti mandando in esecuzione il programma, funziona correttamente ma l'interfaccia grafica è completamente "sbagliata", e non come dico io.
Ecco il codice sorgente:
package sommagrafica;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.EventObject;
/**
*
* @author Francesco
*/
public class Sommagrafica extends JFrame implements ActionListener {
/**
* @param args the command line arguments
*/
JLabel lblPrimo,lblSecondo,lblUguale;
JTextField txtPrimo,txtSecondo,txtUguale;
JButton butSomma, butMolt, butSott, butDiv, butReset;
JPanel panSup,panInf;
public Sommagrafica(){
txtPrimo=new JTextField(JTextField.LEFT);
txtSecondo=new JTextField(JTextField.RIGHT);
txtUguale=new JTextField(JTextField.RIGHT);
lblPrimo=new JLabel("PRIMO NUMERO", JLabel.LEFT);
lblSecondo=new JLabel("SECONDO NUMERO", JLabel.RIGHT);
lblUguale=new JLabel("RISULTATO:", JLabel.CENTER);
lblUguale.setFont(new Font("TimesRoman", Font.BOLD, 18) );
butSomma=new JButton("+");
butSomma.setFont(new Font("TimesRoman", Font.BOLD, 18));
butMolt=new JButton("X");
butMolt.setFont(new Font("TimesRoman", Font.BOLD, 18));
butReset=new JButton("RESET");
butReset.setFont(new Font("TimesRoman", Font.BOLD, 18));
butSott=new JButton("-");
butSott.setFont(new Font("TimesRoman", Font.BOLD, 18));
butDiv=new JButton("/");
butDiv.setFont(new Font("TimesRoman", Font.BOLD, 18));
panSup=new JPanel();
panInf=new JPanel();
panSup.setLayout(new GridLayout(1,2));
panInf.setLayout(new GridLayout(3,4));
setSize(100, 200);
setLocation(300, 400);
setLayout(new BorderLayout());
panSup.add(lblPrimo);
panSup.add(lblSecondo);
panInf.add(txtPrimo);
panInf.add(lblUguale);
panInf.add(txtSecondo);
panInf.add(txtUguale);
panInf.add(butSomma);
panInf.add(butMolt);
panInf.add(butSott);
panInf.add(butReset);
panInf.add(butDiv);
butSomma.addActionListener(this);
butMolt.addActionListener(this);
butSott.addActionListener(this);
butReset.addActionListener(this);
butDiv.addActionListener(this);
add(panSup,BorderLayout.PAGE_START);
add(panInf, BorderLayout.PAGE_END);
pack();
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
if (e.getSource()==butSomma)
{
double primo=Double.parseDouble(txtPrimo.getText());
double secondo=Double.parseDouble(txtSecondo.getText());
double uguale=primo+secondo;
txtUguale.setText(""+uguale);
}
else if(e.getSource()==butMolt)
{
double primo=Double.parseDouble(txtPrimo.getText());
double secondo=Double.parseDouble(txtSecondo.getText());
double uguale=primo*secondo;
txtUguale.setText(""+uguale);
}
else if(e.getSource ()==butSott)
{
double primo=Double.parseDouble(txtPrimo.getText());
double secondo=Double.parseDouble(txtSecondo.getText());
double uguale=primo-secondo;
txtUguale.setText(""+uguale);
}
else if(e.getSource ()==butDiv)
{
double primo=Double.parseDouble(txtPrimo.getText());
double secondo=Double.parseDouble(txtSecondo.getText());
double uguale=primo/secondo;
txtUguale.setText(""+uguale);
}
else
{
txtPrimo.setText("");
txtSecondo.setText("");
txtUguale.setText("");
}
}
public static void main(String[] args) {
// TODO code application logic here
new Sommagrafica();
}
}
Non voglio utilizzare l'editor grafico incluso in Netbeans ma voglio programmare l'interfaccia grafica "manualmente"...
mi scuso per eventuali errori nello spiegare il problema (sono alle prime armi..) e vi ringrazio anticipatamente.