codice:
import java.awt.*;
import java.awt.event.*;
import java.io.IOException;
import java.net.URI;
import javax.swing.*;
import javax.swing.table.*;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JComponent.*; //Colore tasti
//import java.awt.Desktop;
class Sfondo extends JPanel{
private Image image;
public Sfondo(String back){
try {
image = ImageIO.read(new File (back));
}
catch (IOException e) {
e.printStackTrace();
}
}
public void paintComponent(Graphics g){
super.paintComponent(g);
if (image==null)
return;
g.drawImage(image,0,0,null);
}
}
class Finestra{
//Attributi
private JFrame frame;
private JMenuBar menbar;
private JMenu [] men;
private JMenuItem [] menit;
private JLabel lpezzo,lmarca,lcosto,lprovenienza;
private JTextField pezzo,marca,costo,provenienza;
private JButton bapri,bsalva,binserisci,bcancella,bmodifica,btrova;
private JTable table;
private DefaultTableModel model;
Object[][] Magazzino = {
{"Argento", "Argento", new Integer(1000), "USA"},
{"Oro", "Doro",new Integer(300),"USA" },
};
String[] InfoArticolo = {"Pezzo",
"Marca",
"Costo",
"Provenienza"};
public Finestra(){
frame=new JFrame();
menbar = new JMenuBar();
men = new JMenu[3];
menit = new JMenuItem[8];
lpezzo = new JLabel("Nome Pezzo");
lmarca = new JLabel("Marca");
lcosto = new JLabel("Costo");
lprovenienza = new JLabel("Provenienza");
pezzo = new JTextField();
marca = new JTextField();
costo = new JTextField();
provenienza = new JTextField();
bapri = new JButton("Apri");
bsalva = new JButton("Salva");
binserisci = new JButton("Inserisci");
bcancella = new JButton("Cancella");
bmodifica = new JButton("Modifica");
btrova = new JButton("Trova");
work();
}
public void work(){
frame.setLayout(null);
Sfondo s=new Sfondo("");
s.setLayout(null);
s.setBounds(0,0,600,600);
frame.add(s);
pezzo.setBounds(60,100,100,30);
s.add(pezzo);
lpezzo.setBounds(75,50,70,70);
s.add(lpezzo);
marca.setBounds(185,100,100,30);
s.add(marca);
lmarca.setBounds(217,50,70,70);
s.add(lmarca);
costo.setBounds(310,100,100,30);
s.add(costo);
lcosto.setBounds(342,50,70,70);
s.add(lcosto);
provenienza.setBounds(435,100,100,30);
s.add(provenienza);
lprovenienza.setBounds(449,50,70,70);
s.add(lprovenienza);
bsalva.setBounds(300,30,100,30);
s.add(bsalva);
bsalva.setForeground(Color.RED);
bapri.setBounds(190,30,100,30);
s.add(bapri);
bapri.setForeground(Color.RED);
binserisci.setBounds(75,190,100,30);
s.add(binserisci);
binserisci.setForeground(Color.BLUE);
bcancella.setBounds(190,190,100,30);
s.add(bcancella);
bcancella.setForeground(Color.BLUE);
bmodifica.setBounds(305,190,100,30);
s.add(bmodifica);
bmodifica.setForeground(Color.BLUE);
btrova.setBounds(420,190,100,30);
s.add(btrova);
btrova.setForeground(Color.BLUE);
//Instanza dei JMenu
for(int i=0;i<3;i++){
men[i] = new JMenu();
}
//Instanza dei JMenuItem
for(int i=0;i<8;i++){
menit[i] = new JMenuItem();
}
frame.setJMenuBar(menbar); //Aggiunge jmenubar alla finestra
//Testo JMenu
men[0].setText("File");
men[1].setText("Modifica");
men[2].setText("?");
//Aggiunge i jmenu al jmenubar
for(int i=0;i<3;i++){
menbar.add(men[i]);
}
//Testo JMenu Item
menit[0].setText("Apri");
menit[1].setText("Salva");
menit[2].setText("Inserisci");
menit[3].setText("Cancella");
menit[4].setText("Ordina");
menit[5].setText("Trova");
menit[6].setText("Guida in linea");
menit[7].setText("I");
//Aggiunge i JMenu Item[0]
men[0].add(menit[0]);
men[0].add(menit[1]);
//Aggiungo i JMenu Item[1]
for(int i=2;i<6;i++){
men[1].add(menit[i]);
}
//Aggiunge i JMenu Item[2]
men[2].add(menit[6]);
men[2].add(menit[7]);
final JTable table = new JTable(Magazzino,InfoArticolo);
JScrollPane scrollPane = new JScrollPane(table);
model=new DefaultTableModel(Magazzino,InfoArticolo);
table.setModel(model);
s.add(scrollPane);
scrollPane.setBounds(55,295,500,100);
pezzo.requestFocus();
frame.setSize(600, 650); //Dimensioni in pixel della finestra
frame.setVisible(true); //Visiblità frame
frame.setLocationRelativeTo(null); //Imposta finestra al centro del desktop
frame.setResizable(false); //Metodo per impedire alla finestra di essere ridimensionata.
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Impostazione operazione di chiusura processo con la X
}
}
class Negozio {
public static void main (String[] s){
Finestra c=new Finestra();
}
}