import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;
import java.util.Iterator;
import java.util.List;
import javax.swing.GroupLayout;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.GroupLayout.Alignment;
import problema080915.Produs;
import problema080922.DepozitApp;
import problema081017.ProdusDao;
public class FindEntryDlg extends JDialog implements ActionListener {
 JLabel label;
 ProdusDao produsDao; 
 JTable table;
 List list;  
 public FindEntryDlg(JFrame owner){
  super(owner, "Whatever", true);
  label = new JLabel();
  produsDao = ((DepozitApp)owner).getProdusDao();
  JButton ok = new JButton("OK");
  ok.setActionCommand("ok");
  ok.addActionListener(this);
  JButton cancel = new JButton("Cancel");
  cancel.setActionCommand("cancel");
  cancel.addActionListener(this);
  Dimension size = ok.getPreferredSize();
  ok.setBounds(25, 40, size.width, size.height);
  size = cancel.getPreferredSize();
  cancel.setBounds(25, 80, size.width, size.height);
  
  JScrollPane scrollPane = null;
  
  try{
   list = produsDao.gasesteProduse();
   //   initializare tabel cu rezultate: 
   Object[][] data = new Object[list.size()][5];
   String[] columnNames = {"Cod",
     "Data",
     "Denumire",
     "Cantitate",
   "Valoare unitara"};
   int contor = 0;
   for(Iterator it = list.iterator(); it.hasNext(); ){
    Produs pr = (Produs)it.next();
    data[contor][0] = pr.getCod();
    data[contor][1] = pr.getData();
    data[contor][2] = pr.getDenumire();
    data[contor][3] = pr.getCantitatea();
    data[contor][4] = pr.getValoarea_unitara();
    contor++;
   }
   table = new JTable(data, columnNames);
   table.setPreferredScrollableViewportSize(new Dimension(500, 70));
   table.setFillsViewportHeight(true);
//   Create the scroll pane and add the table to it.
   scrollPane = new JScrollPane(table);
  }catch (SQLException e){
   System.out.println("Exceptie.");
   e.printStackTrace();
  }
  GroupLayout layout = new GroupLayout(this.getContentPane());
  this.getContentPane().setLayout(layout);
  layout.setAutoCreateGaps(true);
  layout.setAutoCreateContainerGaps(true);
  GroupLayout.SequentialGroup hGroup = layout.createSequentialGroup();
  hGroup.addGroup(layout.createParallelGroup().
    addComponent(ok).addComponent(scrollPane));
  hGroup.addGroup(layout.createParallelGroup().
    addComponent(cancel));  
  layout.setHorizontalGroup(hGroup);
  GroupLayout.SequentialGroup vGroup = layout.createSequentialGroup();  
  vGroup.addGroup(layout.createParallelGroup(Alignment.BASELINE).
    addComponent(scrollPane));
  vGroup.addGroup(layout.createParallelGroup(Alignment.BASELINE).
    addComponent(ok).addComponent(cancel));
  layout.setVerticalGroup(vGroup);  
  this.setSize(600, 300);
 }
 public void actionPerformed(ActionEvent event) {
  String cmd = event.getActionCommand();
  if("ok".equals(cmd)) {
   label.setText("Butonul ok a fost apasat");  
   try{
    list = produsDao.gasesteProduse();
    MetodeUtilitare.afiseazaRezultateInterogare(list);
   }catch (SQLException e){
    System.out.println("Exceptie.");
    e.printStackTrace();
   }   
  } else if ("cancel".equals(cmd)) {
   label.setText("Butonul cancel a fost apasat");   
  }
  this.setVisible(false);
 } 
}
joi, 13 noiembrie 2008
Abonați-vă la:
Comentarii (Atom)