codice:
import java.awt.*;
import java.sql.*;
import static java.awt.GridBagConstraints.*;
import javax.swing.*;
public class AddBet extends JFrame {
Database db;
JPanel pannello1;
JLabel codice;
JLabel data;
JTextField dataF;
JLabel inCasa;
JTextField inCasaF;
JLabel ospite;
JTextField ospiteF;
JLabel esito;
JComboBox esitoF;
JButton back;
JButton exit;
JButton newBet;
JButton insertNew;
JTextArea choiceTeam;
String[] possibiliEsiti;
int nSquadre = 0;
int codBolla;
public AddBet(Database db){
super ("Aggiungi Scommessa");
this.db = db;
this.setResizable(false);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setSize(1000,500);
this.setLocationRelativeTo(null);
GridBagLayout layout = new GridBagLayout();
GridBagConstraints limiti = new GridBagConstraints();
pannello1 = new JPanel();
pannello1.setLayout(layout);
//settaggio limiti dai bordi
limiti.insets.top = 15;
limiti.insets.bottom = 15;
limiti.insets.left = 15;
limiti.insets.right = 15;
//creazione e aggiunta al pannello del bottone back
back = new JButton("Back");
back.setPreferredSize(new Dimension(75,25));
Welcome.setConstraint(limiti,0,0,1,1,1,1,NONE,NORTH);
pannello1.add(back,limiti);
//creazione e aggiunta al pannello dell bottone exit
exit = new JButton(Welcome.icon);
exit.setPreferredSize(new Dimension(50,50));
Welcome.setConstraint(limiti,4,0,1,0,1,1,NONE,NORTH);
pannello1.add(exit,limiti);
//creazione e aggiunta della label con il codice della scommessa autogenerato
codice = new JLabel("Codice Scommessa: ");
try{
ResultSet s = db.eseguiQuery("select count(codice) from Bolletta");
if(s.next()){
if(s.getString(1).equals("0")){
codBolla = 1;
codice.setText(codice.getText().concat("1"));
}
else{
s = db.eseguiQuery("select max(codice)+1 from Bolletta");
if(s.next()){
codBolla = Integer.parseInt(s.getString(1),10);
codice.setText(codice.getText().concat(s.getString(1)));
}
}
}
}
catch(SQLException e){
System.out.println(db.getErrore());
}
Welcome.setConstraint(limiti,0,1,1,1,1,1,NONE,CENTER);
pannello1.add(codice,limiti);
//creazione e aggiunta della label con scritto "Data"
data = new JLabel("Data: ");
Welcome.setConstraint(limiti,0,2,1,1,1,1,NONE,CENTER);
pannello1.add(data,limiti);
//creazione e aggiunta del JtextField che conterra la data della partita da inserire
dataF = new JTextField(15);
Welcome.setConstraint(limiti,1,2,1,1,1,1,NONE,CENTER);
pannello1.add(dataF,limiti);
//creazione e aggiunta della label con scritto "Squadra Casa"
inCasa = new JLabel("Squadra in Casa: ");
Welcome.setConstraint(limiti,0,3,1,1,1,1,NONE,CENTER);
pannello1.add(inCasa,limiti);
//creazione e aggiunta del JtextField che conterra squadra di casa
inCasaF = new JTextField(15);
Welcome.setConstraint(limiti,1,3,1,1,1,1,NONE,CENTER);
pannello1.add(inCasaF,limiti);
//creazione e aggiunta della label con scritto "Squadra Ospite"
ospite = new JLabel("Squadra Ospite: ");
Welcome.setConstraint(limiti,0,4,1,1,1,1,NONE,CENTER);
pannello1.add(ospite,limiti);
//creazione e aggiunta del JtextField che conterra la data della partita da inserire
ospiteF = new JTextField(15);
Welcome.setConstraint(limiti,1,4,1,1,1,1,NONE,CENTER);
pannello1.add(ospiteF,limiti);
//creazione e aggiunta della label con scritto "Squadra Ospite"
esito = new JLabel("Esito: ");
Welcome.setConstraint(limiti,0,5,1,1,1,1,NONE,CENTER);
pannello1.add(esito,limiti);
//creazione e aggiunta del JtextField che conterra la data della partita da inserire
possibiliEsiti = new String[16];
possibiliEsiti[0] = " ";
possibiliEsiti[1] = "1";
possibiliEsiti[2] = "X";
possibiliEsiti[3] = "2";
possibiliEsiti[4] = "GOAL";
possibiliEsiti[5] = "NO GOAL";
possibiliEsiti[6] = "UNDER 1,5";
possibiliEsiti[7] = "UNDER 2,5";
possibiliEsiti[8] = "OVER 1,5";
possibiliEsiti[9] = "OVER 2,5";
possibiliEsiti[10] = "1X";
possibiliEsiti[11] = "X2";
possibiliEsiti[12] = "12";
possibiliEsiti[13] = "1H";
possibiliEsiti[14] = "XH";
possibiliEsiti[15] = "R.E.";
esitoF = new JComboBox(possibiliEsiti);
Welcome.setConstraint(limiti,1,5,1,1,1,1,NONE,CENTER);
pannello1.add(esitoF,limiti);
//creazione e aggiunta del bottone per passare alla creazione di una nuova bolla
newBet = new JButton("Nuova Scommessa");
Welcome.setConstraint(limiti,0,6,1,1,2,1,NONE,CENTER);
pannello1.add(newBet,limiti);
//creazione e aggiunta del bottone per passare alla creazione di una nuova bolla
insertNew = new JButton("Inserisci Squadra");
Welcome.setConstraint(limiti,2,6,1,1,2,1,NONE,CENTER);
pannello1.add(insertNew,limiti);
//creazione e aggiunta del bottone per passare alla creazione di una nuova bolla
choiceTeam = new JTextArea(20,40);
choiceTeam.setEditable(false);
Welcome.setConstraint(limiti,3,1,1,1,2,4,NONE,CENTER);
pannello1.add(choiceTeam,limiti);
this.getContentPane().add(pannello1);
this.pack();
this.setVisible(true);
}
}
dovrebbe essere finita l'interfaccia devo solo inserire due piccoli textfield per l'eventuale inserimento di un risultato esatto
codice:
import javax.swing.*;
import java.awt.*;
import static java.awt.GridBagConstraints.*;
import java.awt.event.*;
public class Welcome extends JFrame {
JButton aggiungi;
JButton verifica;
JButton inserisci;
JButton saldo;
JButton storico;
JButton exit;
static Icon icon;
JPanel pannello1;
JLabel testoScommesse;
Database db;
public Welcome(Database db){
super("Gestione Scommesse");
this.db = db;
this.setResizable(false);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setSize(1000,500);
this.setLocationRelativeTo(null);
GridBagLayout layout = new GridBagLayout();
GridBagConstraints limiti = new GridBagConstraints();
pannello1 = new JPanel();
pannello1.setLayout(layout);
//settaggio limiti dai bordi
limiti.insets.top = 5;
limiti.insets.bottom = 5;
limiti.insets.left = 5;
limiti.insets.right = 5;
//creazione e aggiunta al pannello della label con l'immagine
testoScommesse = new JLabel();
testoScommesse.setIcon(new javax.swing.ImageIcon("/home/rambo/Downloads/calcio.gif"));
setConstraint(limiti,1,0,0,0,2,1,BOTH,CENTER);
pannello1.add(testoScommesse,limiti);
//creazione e aggiunta al pannello del bottone aggiungi
aggiungi = new JButton("Aggiungi Scommessa");
aggiungi.setPreferredSize(new Dimension(200,25));
setConstraint(limiti,1,3,1,0,1,1,NONE,EAST);
pannello1.add(aggiungi,limiti);
aggiungi.addActionListener(new addListener());
//creazione e aggiunta al pannello del bottone verifica
verifica = new JButton("Verifica Vincita");
verifica.setPreferredSize(new Dimension(200,25));
setConstraint(limiti,1,4,1,0,1,1,NONE,EAST);
pannello1.add(verifica,limiti);
//creazione e aggiunta al pannello del bottone saldo
saldo = new JButton("Visualizza Saldo");
saldo.setPreferredSize(new Dimension(200,25));
setConstraint(limiti,1,5,1,0,1,1,NONE,EAST);
pannello1.add(saldo,limiti);
//creazione e aggiunta al pannello del bottone inserisci
inserisci = new JButton("Inserisci Risultati");
inserisci.setPreferredSize(new Dimension(200,25));
setConstraint(limiti,1,6,1,0,1,1,NONE,EAST);
pannello1.add(inserisci,limiti);
//creazione e aggiunta al pannello del bottone storico
storico = new JButton("Visualizza Storico");
storico.setPreferredSize(new Dimension(200,25));
setConstraint(limiti,1,7,1,0,1,1,NONE,EAST);
pannello1.add(storico,limiti);
//creazione e aggiunta al pannello del bottone exit
Image i=java.awt.Toolkit.getDefaultToolkit().getImage("/home/rambo/Downloads/exit.jpg");
i=i.getScaledInstance(50,50,Image.SCALE_DEFAULT);
icon = new ImageIcon(i);
exit = new JButton(icon);
exit.setPreferredSize(new Dimension(50,50));
setConstraint(limiti,3,0,1,0,1,1,NONE,NORTH);
pannello1.add(exit,limiti);
exit.addActionListener(new exitListener());
//AGGIUNGO TUTTO AL FRAME E POI RENDO VISIBILE LA FINESTRA ADATTATA
this.getContentPane().add(pannello1);
this.pack();
this.setVisible(true);
}
public static void setConstraint(GridBagConstraints lim,int gridx,int gridy,int weightx,int weighty,int gridwidth,int gridheight,int fill,int anchor){
lim.gridx = gridx;
lim.gridy = gridy;
lim.weightx = weightx;
lim.weighty = weighty;
lim.gridwidth = gridwidth;
lim.gridheight = gridheight;
lim.fill = fill;
lim.anchor = anchor;
}
public static void makeGUI(Database db){
Welcome w = new Welcome(db);
}
public static void main(String[] args) {
final Database db = new Database("GestioneBollette","root","sizzetta");
if ( !db.connetti() ) {
System.out.println("Errore durante la connessione.");
System.out.println( db.getErrore() );
System.exit(0);
}
try{
SwingUtilities.invokeAndWait(new Runnable(){
public void run(){
makeGUI(db);
}
});
}
catch(Exception e){}
}
private class exitListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent arg0) {
db.disconnetti();
dispose();
}
}
private class addListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent arg0) {
dispose();
new AddBet(db).setVisible(true);
}
}
}