venerdì 5 dicembre 2008

Grafica JAVA 2°intervento



Salve a tutti...nn ho proprio voglia di fare nnt come al solito ma oggi in classe, dopo una lunga spiegazione dell'interfaccia delle classi astratte, abbiamo fatto nuove cose con la ormai nota programmazione ad oggetti.
Siccome mi ha colpito l'esercizio fatto in classe ho deciso di ripassarlo e anche ampliarlo se pur in maniera modesta, e quindi riproporlo a chiunque volesse consultarlo.
Ecco cosa si è fatto: ho dato sia una implementazione semplice, sia una un pò più complicata, entramb con l'aggiunta della sottrazione, oltre che alla somma già fatta in classe.


PIù SEMPLICE:

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Finestra4 implements ActionListener{
JLabel l1=new JLabel("primo numero");
JLabel l2=new JLabel("secondo numero");
JTextField t1=new JTextField();
JTextField t2=new JTextField();
JButton b1=new JButton("+");
JButton b2=new JButton("-");
JTextField risultato=new JTextField();
JTextField risultato2=new JTextField();
public void creaForm1(){
JFrame finestra1=new JFrame("finestra2 somma-sottrazione Baldassarri");
finestra1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
finestra1.setSize(600,600);
finestra1.setLayout(new GridLayout(6,3));
finestra1.add(l1);
finestra1.add(t1);
finestra1.add(l2);
finestra1.add(t2);
finestra1.add(b1);
finestra1.add(b2);
finestra1.add(risultato);
finestra1.add(risultato2);
b1.addActionListener(this);
b2.addActionListener(this);
finestra1.setVisible(true);
}
public void actionPerformed(ActionEvent event){
String testo1=t1.getText();
String testo2=t2.getText();
int a=Integer.parseInt(testo1);
int b=Integer.parseInt(testo2);
int somma=a+b;
String r=Integer.toString(somma);
risultato.setText(r);

int sottrazione=a-b;
String r2=Integer.toString(sottrazione);
risultato2.setText(r2);
}

}


IL RISULTATO CHE AVRETE SARà QUESTO:








UN Pò PIù COMPLESSO:


import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Finestra3 implements ActionListener{
JLabel l1=new JLabel("primo n-somma");
JLabel l2=new JLabel("secondo n-somma");
JLabel l3=new JLabel("primo n-sottrazione");
JLabel l4=new JLabel("secondo n-sottrazione");
JTextField t1=new JTextField();
JTextField t2=new JTextField();
JTextField t3=new JTextField();
JTextField t4=new JTextField();
JButton b1=new JButton("+");
JButton b2=new JButton("-");
JTextField risultato=new JTextField();
JTextField risultato2=new JTextField();
public void creaForm1(){
JFrame finestra1=new JFrame("finestra somma-sottrazione Baldassarri");
finestra1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
finestra1.setSize(600,600);
finestra1.setLayout(new GridLayout(6,3));
finestra1.add(l1);
finestra1.add(t1);
finestra1.add(l2);
finestra1.add(t2);
finestra1.add(l3);
finestra1.add(t3);
finestra1.add(l4);
finestra1.add(t4);
finestra1.add(b1);
finestra1.add(b2);
finestra1.add(risultato);
finestra1.add(risultato2);
b1.addActionListener(this);
b2.addActionListener(this);
finestra1.setVisible(true);
}
public void actionPerformed(ActionEvent event){
String testo1=t1.getText();
String testo2=t2.getText();
int a=Integer.parseInt(testo1);
int b=Integer.parseInt(testo2);
int somma=a+b;
String r=Integer.toString(somma);
risultato.setText(r);


String testo3=t3.getText();
String testo4=t4.getText();
int c=Integer.parseInt(testo3);
int d=Integer.parseInt(testo4);
int sottrazione=c-d;
String r2=Integer.toString(sottrazione);
risultato2.setText(r2);
}

}



IL RISULTATO CHE AVRETE SARà QUESTO:




----Ovviamente tutte queste istruzioni non funzioneranno mai da sole perchè nn è presente una main!!!!! Quindi avrete bisogno di un'altro file.java per eseguirlo.

basta solo cambiare il nome della classe a seconda del nome che avete dato sull'altro file dove sono presenti tutte le istrizioni (ad esempio: Finestra3.java ; TestaFinestra3.java)

public class TestaFinestra3{
public static void main(String[] args){
Finestra3 f=new Finestra3();
f.creaForm1();
}
}


Dopo questa lunga spiegazione io direi di chiudere......ALLA PROSSIMA CON NUOVI AGGIORNAMENTI!!!!!

Nessun commento: