Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.swing.*;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.awt.event.*;
- import java.sql.Time;
- import java.util.Date;
- public class Assignment1 extends JPanel implements ActionListener {
- private JButton bus;
- private JLabel currentTime, inputTime, dvetochki;
- private JTextField hours, minutes, busField ;
- public Assignment1() {
- setLayout(null);
- Date time = new Date();
- bus = new JButton("Bus");
- bus.addActionListener(this);
- hours=new JTextField("",5);
- minutes=new JTextField("",5);
- currentTime = new JLabel("The current time: " + time.getHours() + ":" + time.getMinutes());
- inputTime = new JLabel("Hrs:Min =");
- dvetochki = new JLabel(" : ");
- busField = new JTextField ("");
- bus.setBounds(50,100,130,25);
- hours.setBounds(70,50,50,30);
- minutes.setBounds(130,50,50,30);
- currentTime.setBounds(10,10,155,30);
- inputTime.setBounds(10,50,155,30);
- dvetochki.setBounds(120 ,47,30,30);
- busField.setBounds(10,140,215,50);
- add(bus);
- add(hours);
- add(minutes);
- add(currentTime);
- add(inputTime);
- add(dvetochki);
- add(busField);
- }
- public static boolean isInteger(String s) {
- try {
- Integer.parseInt(s);
- } catch(NumberFormatException e) {
- return false;
- } catch(NullPointerException e) {
- return false;
- }
- // only got here if we didn't return false
- return true;
- }
- public void actionPerformed(ActionEvent e) {
- Date time = new Date();
- int[][] timeTable;
- timeTable = new int[50][2];
- timeTable[0][0]=8;
- timeTable[0][1]=45;
- timeTable[1][0]=9;
- timeTable[1][1]=31;
- timeTable[2][0]=9;
- timeTable[2][1]=54;
- timeTable[3][0]=10;
- timeTable[3][1]=40;
- timeTable[4][0]=11;
- timeTable[4][1]=3;
- timeTable[5][0]=11;
- timeTable[5][1]=49;
- timeTable[6][0]=12;
- timeTable[6][1]=12;
- timeTable[7][0]=12;
- timeTable[7][1]=58;
- timeTable[8][0]=13;
- timeTable[8][1]=21;
- timeTable[9][0]=14;
- timeTable[9][1]=7;
- timeTable[10][0]=14;
- timeTable[10][1]=30;
- timeTable[11][0]=15;
- timeTable[11][1]=16;
- timeTable[12][0]=15;
- timeTable[12][1]=39;
- timeTable[13][0]=16;
- timeTable[13][1]=25;
- timeTable[14][0]=16;
- timeTable[14][1]=48;
- timeTable[15][0]=17;
- timeTable[15][1]=34;
- timeTable[16][0]=17;
- timeTable[16][1]=57;
- timeTable[17][0]=18;
- timeTable[17][1]=43;
- timeTable[18][0]=19;
- timeTable[18][1]=6;
- timeTable[19][0]=19;
- timeTable[19][1]=52;
- timeTable[20][0]=20;
- timeTable[20][1]=15;
- if (e.getSource() == bus) {
- if (hours.getText().length() == 0 && minutes.getText().length() == 0){
- int response = JOptionPane.showConfirmDialog(null,"Time request is empty, would you like to proceed with the current time?", "Time Request Empty", JOptionPane.YES_NO_OPTION);
- if (response == JOptionPane.YES_OPTION){
- hours.setText(Integer.toString(time.getHours()));
- minutes.setText(Integer.toString(time.getMinutes()));
- int hoursValue = Integer.parseInt(hours.getText());
- int minutesValue = Integer.parseInt(minutes.getText());
- for(int i=0;i<20;i++)
- {
- if(hoursValue<timeTable[0][0])
- {
- busField.setText("Next bus: " + timeTable[0][0]+":"+timeTable[0][1]);
- break;
- }
- if(hoursValue>timeTable[20][0])
- {
- String a = busField.getText();
- busField.setText(a + System.lineSeparator() + "Last bus was: " + timeTable[20][0]+":"+timeTable[20][1]);
- break;
- }
- if(timeTable[i][0]==hoursValue)
- {
- for(int j=i;j<20;j++)
- {
- if(minutesValue<=timeTable[j][1])
- {
- busField.setText("Next bus: " + timeTable[j][0]+ ":"+timeTable[j][1] + System.lineSeparator() + "Previous bus: " + timeTable[j-1][0]+ ":"+timeTable[j-1][1] );
- break;
- }
- busField.setText("Next bus: " + timeTable[j+1][0]+":"+timeTable[j+1][1] + System.lineSeparator() + "Previous bus: " + timeTable[j][0]+":"+timeTable[j][1] );
- break;
- }
- break;
- }
- }
- }
- }else if (isInteger(hours.getText()) && isInteger(minutes.getText())) {
- int hoursValue = Integer.parseInt(hours.getText());
- int minutesValue = Integer.parseInt(minutes.getText());
- for(int i=0;i<20;i++)
- {
- if(hoursValue<timeTable[0][0])
- {
- busField.setText("Next bus: " + timeTable[0][0]+":"+timeTable[0][1]);
- break;
- }
- if(hoursValue>timeTable[20][0])
- {
- String a = busField.getText();
- busField.setText(a + System.lineSeparator() + "Last bus was: " + timeTable[20][0]+":"+timeTable[20][1]);
- break;
- }
- if(timeTable[i][0]==hoursValue)
- {
- for(int j=i;j<20;j++)
- {
- if(minutesValue<=timeTable[j][1])
- {
- busField.setText("Next bus: " + timeTable[j][0]+ ":"+timeTable[j][1] + System.lineSeparator() + "Previous bus: " + timeTable[j-1][0]+ ":"+timeTable[j-1][1] );
- break;
- }
- busField.setText("Next bus: " + timeTable[j+1][0]+":"+timeTable[j+1][1] + System.lineSeparator() + "Previous bus: " + timeTable[j][0]+":"+timeTable[j][1] );
- break;
- }
- break;
- }
- }
- }else{
- JOptionPane.showMessageDialog(null,"Please enter an integer number in the field.","Input Error", JOptionPane.ERROR_MESSAGE);
- }
- }
- }
- public static void main(String[] arg) {
- JFrame f = new JFrame("Buses");
- f.getContentPane().add(new Assignment1());
- f.setSize(250,250);
- f.setLocation(300,300);
- f.setVisible(true);
- f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- f.show();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement