codice:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
import java.awt.FocusTraversalPolicy;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Arrays;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.border.BevelBorder;
import javax.swing.border.SoftBevelBorder;
import com.jgoodies.forms.layout.CellConstraints;
import com.jgoodies.forms.layout.FormLayout;
/**
*
* @author Roby
*/
public class Table2 extends JFrame implements ActionListener{
/**
*
*/
private static final long serialVersionUID = 1L;
private JButton tabella;
private JPanel scatola;
private JTable t;
public Connection conn;
private JButton cancella;
/** Costruttore Data*/
public Table2() {
super("prova database");
setSize(500,250);
setLocation(200,200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
tabella = new JButton("DATI IN TABELLA");
scatola = new JPanel();
tabella.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try {
leggitabella(e);
} catch (SQLException ex) {
ex.printStackTrace();
}
}
});
scatola.setLayout(null);
add(scatola);
scatola.add(tabella);
tabella.setBounds(300,170,150,30);
}
public static void main(String[] args){
Table2 visualizza = new Table2();
visualizza.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
}
// il metodo leggi dati leggi idati dall’archivio e li visualizza in una nuova finestra
public void leggidati(ActionEvent e) throws SQLException{
// Costruzione nuova finestra
JDialog finestra = new JDialog();
JTextArea lavagna = new JTextArea();
Font f = new Font(" ", Font.BOLD,15);
lavagna.setFont(f);
finestra.setTitle("finestra di dialogo col database");
finestra.setSize(400,400);
finestra.setLocation(300,200);
finestra.setVisible(true);
finestra.setLayout(new BorderLayout());
finestra.add(BorderLayout.CENTER,new JScrollPane(lavagna));
finestra.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
}
// fine leggidati
// parte relative alla visualizzazione dei dati in una tabella
@SuppressWarnings("serial")
// il metodo leggitabella fa vedre il dislay dei dati in una tabella in una nuova finestra
public void leggitabella(ActionEvent e) throws SQLException{
// costruzione nuova finestra
JDialog finestra2 = new JDialog();
JPanel PannelloBottoni = new JPanel();
cancella = new JButton("Cancella");
JButton modifica = new JButton("Modifica");
@SuppressWarnings("unused")
//JTextArea lavagna2 = new JTextArea();
Font f2 = new Font(null, Font.BOLD,15);
ModTab miomodello = new ModTab("Utente");
t = new JTable(miomodello);
finestra2.add("North", t);
finestra2.add("South", PannelloBottoni);
FormLayout PAnnelloBottoniLayout = new FormLayout(
"27dlu, 117dlu, 66dlu, 117dlu",
" 17dlu, 37dlu, max(p;5dlu)");
PannelloBottoni.setLayout(PAnnelloBottoniLayout);
PannelloBottoni.setBorder(new SoftBevelBorder(BevelBorder.LOWERED, null, null, null, null));
PannelloBottoni.setBackground(new Color(0, 51, 255));
PannelloBottoni.setPreferredSize(new java.awt.Dimension(542, 171));
PannelloBottoni.add(cancella, new CellConstraints("2, 3, 1, 1, default, default"));
PannelloBottoni.add(modifica, new CellConstraints("4, 3, 1, 1, default, default"));
cancella.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
t.getModel().removeTableModelListener(ChangeTable);
ModTab model =(ModTab)t.getModel();
model.removeRow(t.getSelectedRow());
}
}
);
finestra2.add(t);
finestra2.setFont(f2);
finestra2.setTitle("visualizzazione dati in tabella");
finestra2.setSize(1280, 775);
//finestra2.setLocation(0,0);
finestra2.setVisible(true);
finestra2.setLayout(new BorderLayout());
finestra2.add(BorderLayout.NORTH,new JScrollPane(t));
finestra2.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
} // fine leggitabella
}