package se20.coursework; import info.clearthought.layout.TableLayout; 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.SQLException; import java.sql.Statement; import java.sql.Time; import java.util.Date; import java.util.Vector; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.JTextField; import se20.coursework.provided.Event; /** * Login screen for Z-Club members wishing to purchase tickets. * * @author Rick Denoff * @version 1.0 (2006-10-29) */ public class EventScreen extends Screen { private static final String AUTH_SQL = "select * from Event"; private static final String LOGIN_HELP = "Please enter your Z-Club member ID and PIN.\n" + "Then press the 'Continue' button to choose an event."; private TicketMasterGui gui; private Connection database; private JTextField choice; private Vector dataVector; private JTable dataTable; private int row; /** * Creates a LoginScreen. * * @param gui User interface to which the LoginScreen belongs * @param database Connection to Z-Club's database */ public EventScreen(TicketMasterGui gui, Connection database) { this.gui = gui; this.database = database; addHelp(LOGIN_HELP); configureButtons(); actionPerformed(); } public void actionPerformed() { Statement dbStatement = null; ResultSet dbRS = null; try { dbStatement = database.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); dbRS = dbStatement.executeQuery(AUTH_SQL); presentResultSet(dbRS); } catch (SQLException sqlex) { JOptionPane.showMessageDialog(null, sqlex.getMessage()); } } /** * * @param dbRS */ private void presentResultSet(ResultSet dbRS) throws SQLException { dataVector = new Vector(); if (!dbRS.next()) JOptionPane.showMessageDialog(null, "No records for event"); else { do { Vector rowVector = new Vector(); rowVector.addElement(dbRS.getString("date")); rowVector.addElement(dbRS.getString("time")); rowVector.addElement(dbRS.getString("performer")); rowVector.addElement(dbRS.getString("room_id")); rowVector.addElement(dbRS.getString("price")); rowVector.addElement(dbRS.getString("tickets_left")); dataVector.addElement(rowVector); } while (dbRS.next()); } Vector headVector = new Vector(6); headVector.addElement("date"); headVector.addElement("time"); headVector.addElement("performer"); headVector.addElement("room_id"); headVector.addElement("price"); headVector.addElement("tickets_left"); dataTable = new JTable(); dataTable = new JTable (dataVector, headVector); //JScrollPane dataTableScrollPane = new JScrollPane(dataTable); //dataTableScrollPane.setViewportView(dataTable); //dataTableScrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS ); //dataTableScrollPane.setWheelScrollingEnabled(true); JPanel form = new JPanel(); form.add(dataTable); addMainComponent(form); int id = 5; dbRS.absolute(1); dbRS.absolute(2); String performer = (String)dbRS.getString("Performer"); String room = "rew"; double ticketPrice = 34.4; int tickets_left = 4; gui.chosenEvent = new Event(id, null, null, performer, room, ticketPrice, tickets_left); } /** * Configures this LoginScreen's Continue and Cancel buttons. */ private void configureButtons() { setContinueButtonHandler( new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { gui.selectPaymentScreen(); } } ); setCancelButtonHandler( new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { gui.selectLoginScreen(); } } ); } /** * */ @Override public void clearData() { // TODO Auto-generated method stub } }