Buon giorno ho bisogno di aiuto e non so come fare bene,sto provando un po di layout,La finestra dovrebbe essere fatta cosi, a sinistra un pannello di sinistra con un jtable , un pannello di destra dove fare delle piccole statistiche, dove andranno inserite una ricerca da data a data e qualche Button, Poi pensavo sotto la Jtable di mettere u'altro pannello con dei Button per salvare le modifiche che andranno fatte su di essa e altri bottoni per altro, ma non so se sto facendo beme,Ho impostato il Layout del Frame come un Border Layout , e aggiunto il pannello di sinistra in CENTER mentre il pannello di destra sul EAST,poi ho settato il layout del pannello right come un GridBagLayout però non riesco a metterli bene in ordine sono sfalsati.Mentre sotto La Jtable non so come fare,vi posto il codice
codice:public class Frame1 extends javax.swing.JFrame{ Connection conn = null; ResultSet rs = null; PreparedStatement pst = null; private JPanel left,right,sottoL; public JTable tabella_busta; private JButton mostra,prova; private JLabel dataDa; private JLabel operatore; public Frame1(){ super ("Riparazione Orologi"); this.setSize(new Dimension(1027,768)); this.setDefaultCloseOperation(EXIT_ON_CLOSE); this.setLayout(new BorderLayout()); conn = ConnessioneDb.connectDb(); initComponents(); Popola_Tabella(); } private void initComponents() { //pannello di sinistra left = new JPanel(); TitledBorder titoloPLeft = new TitledBorder("Operazioni Buste"); left.setPreferredSize(new Dimension(400,30)); left.setLayout(new GridLayout(1,2)); left.setBorder(titoloPLeft); //pannello di destra right = new JPanel(); TitledBorder titoloPRight = new TitledBorder("Statistiche Buste"); right.setLayout( new GridBagLayout()); GridBagConstraints c = new GridBagConstraints (); right.setBorder(titoloPRight); //pannello sotto left sottoL = new JPanel(); TitledBorder sotto = new TitledBorder("Comandi"); sottoL.setPreferredSize(new Dimension(400,30)); sottoL.setLayout(new GridLayout(1,2)); sottoL.setBorder(sotto); //left.add(sottoL); //Bottoni mostra = new JButton("Mostra"); c.fill = GridBagConstraints.HORIZONTAL; c.weightx = 0.2; c.gridx = 1; c.gridy = 0; right.add(mostra, c); mostra.setPreferredSize(new Dimension (100,20)); prova = new JButton("Prova"); c.fill = GridBagConstraints.HORIZONTAL; c.weightx = 0.5; c.gridx = 1; c.gridy = 0; right.add(mostra, c); mostra.setPreferredSize(new Dimension (100,20)); //Etichette dataDa = new JLabel("Data da"); dataDa.setPreferredSize(new Dimension (100,20)); c.fill = GridBagConstraints.HORIZONTAL; //c.weightx = 0.5; c.gridx = 0; c.gridy = 1; right.add(dataDa, c); dataDa.setPreferredSize(new Dimension(200,20)); //right.add(dataDa,new GridLayout(1,1)); //Metto i Pannelli nel contenitore root Container MainContenitore = this.getContentPane(); MainContenitore.setLayout(new BorderLayout()); MainContenitore.add(left,BorderLayout.CENTER); MainContenitore.add(right,BorderLayout.EAST); } //Creo una Jtable Per le buste private void Popola_Tabella(){ try { String sql= "select * from Buste"; pst = conn.prepareStatement(sql); rs = pst.executeQuery(); ResultSetMetaData rsmd = rs.getMetaData(); int numColonne = rsmd.getColumnCount(); Vector nomeColonne = new Vector(); //for (int nr=0; nr<numColonne; nr++) nomeColonne.add("Codice"); nomeColonne.add("CodiceBusta"); nomeColonne.add("Prezzo costo"); nomeColonne.add("Prezzo"); nomeColonne.add("Data"); nomeColonne.add("Operatore"); Vector <Vector> datiRighe = new Vector <Vector>(); while (rs.next()){ Vector riga = new Vector(); for (int nr=0; nr<numColonne; nr++) { riga.add(rs.getObject(nr+1)); } datiRighe.add(riga); } tabella_busta=new JTable(datiRighe,nomeColonne); JScrollPane p = new JScrollPane(tabella_busta);//Metto la tabella in un scrollPane left.add(p);//La aggingo al pannello di sinistra } catch (SQLException e) { JOptionPane.showMessageDialog(null, e); } } public static void main(String[] args) { new Frame1().setVisible(true);; } }

Rispondi quotando