Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.applet.*;
- import java.awt.*;
- import java.awt.event.*;
- import java.io.*;
- import java.lang.*;
- import java.text.*;
- import java.util.*;
- import javax.swing.*;
- import javax.tools.*;
- import javax.xml.parsers.*;
- import org.w3c.dom.*;
- public abstract class GUI implements WindowListener, ActionListener{
- public static void Viron() throws InterruptedException {
- //Default
- int width = 1200;
- int height = 600;
- JFrame frame = new JFrame("Viron");
- try {
- File fXmlFile = new File("/Users/Asus Realsense/OneDrive/Leaf/Viron/Software/Java/GUI/src/trein.xml");
- DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
- DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
- Document doc = dBuilder.parse(fXmlFile);
- //optional, but recommended
- //read this - http://stackoverflow.com/questions/13786607/normalization-in-dom-parsing-with-java-how-does-it-work
- doc.getDocumentElement().normalize();
- System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
- NodeList nList = doc.getElementsByTagName("ActueleVertrekTijden");
- System.out.println("------ ----------------------");
- for (int temp = 0; temp < nList.getLength(); temp++) {
- Node nNode = nList.item(temp);
- System.out.println("\nCurrent Element :" + nNode.getNodeName());
- if (nNode.getNodeType() == Node.ELEMENT_NODE) {
- Element eElement = (Element) nNode;
- System.out.println("RitNummer : " + eElement.getElementsByTagName("RitNummer").item(0).getTextContent());
- if(eElement.getElementsByTagName("EindBestemming").item(0).getTextContent() == "Utrecht Centraal"){
- System.out.println("EindBestemming : " + eElement.getElementsByTagName("EindBestemming").item(0).getTextContent());
- }
- }
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- Calendar c = Calendar.getInstance();
- String dayOfWeek = String.valueOf(c.get(Calendar.DAY_OF_WEEK));
- String hour = String.valueOf(c.get(Calendar.HOUR_OF_DAY));
- String minute = String.valueOf(c.get(Calendar.MINUTE));
- String seconds = String.valueOf(c.get(Calendar.SECOND));
- String day = String.valueOf(c.get(Calendar.DAY_OF_MONTH));
- String month = String.valueOf(c.get(Calendar.MONTH));
- String year = String.valueOf(c.get(Calendar.YEAR));
- String monthName = null;
- String dayName = null;
- if(Integer.parseInt(hour) < 10){
- hour = "0" + hour;
- }
- if(Integer.parseInt(minute) < 10){
- minute = "0" + minute;
- }
- if(Integer.parseInt(day) < 10){
- day = "0" + day;
- }
- if(Integer.parseInt(month) < 10){
- month = "0" + month;
- }
- switch(dayOfWeek){
- case "1": dayName = "Zondag";
- break;
- case "2": dayName = "Maandag";
- break;
- case "3": dayName = "Dinsdag";
- break;
- case "4": dayName = "Woensdag";
- break;
- case "5": dayName = "Donderdag";
- break;
- case "6": dayName = "Vrijdag";
- break;
- case "7": dayName = "Zaterdag";
- break;
- }
- switch(month){
- case "1": monthName = "januari";
- break;
- case "2": monthName = "februari";
- break;
- case "3": monthName = "maart";
- break;
- case "4": monthName = "april";
- break;
- case "5": monthName = "mei";
- break;
- case "6": monthName = "juni";
- break;
- case "7": monthName = "juli";
- break;
- case "8": monthName = "augustus";
- break;
- case "9": monthName = "september";
- break;
- case "10": monthName = "oktober";
- break;
- case "11": monthName = "november";
- break;
- case "12": monthName = "december";
- break;
- }
- //Menu
- JMenuBar menubar = new JMenuBar();
- JMenu menu1 = new JMenu("Main menu");
- JMenu menu2 = new JMenu();
- JMenu menu3 = new JMenu("Clock menu");
- menubar.add(menu1);
- menubar.add(menu2);
- menubar.add(menu3);
- JMenuItem vironLabel = new JMenuItem("Leaf Viron");
- JLabel currentPage = new JLabel("Home");
- JMenuItem clock = new JMenuItem(hour + ":" + minute);
- menubar.setPreferredSize(new Dimension(width, 50));
- menu1.setPreferredSize(new Dimension(600, 50));
- menu2.setPreferredSize(new Dimension(500, 50));
- menu3.setPreferredSize(new Dimension(100, 50));
- frame.setJMenuBar(menubar);
- menu1.add(vironLabel, BorderLayout.WEST);
- menu2.add(currentPage, BorderLayout.NORTH);
- menu3.add(clock, BorderLayout.EAST);
- //Container
- JPanel homePanel = new JPanel();
- JPanel settingsPanel = new JPanel();
- homePanel.setLayout(new GridBagLayout());
- settingsPanel.setLayout(new GridBagLayout());
- GridBagConstraints homeC = new GridBagConstraints();
- GridBagConstraints settingsC = new GridBagConstraints();
- homeC.insets = new Insets(4, 5, 4, 5);
- //Home panel
- JPanel upperPanel = new JPanel();
- JPanel upperRightButtonPanel = new JPanel();
- JLabel headerLabel = new JLabel("Welcome to Viron");
- JLabel dateTimeLabel = new JLabel();
- JLabel pinTouched = new JLabel();
- JButton settingsButton = new JButton();
- homePanel.add(upperPanel, homeC);
- homeC.gridx = 0;
- homeC.gridy = 0;
- upperPanel.add(dateTimeLabel, homeC);
- homeC.gridx = 2;
- homeC.gridy = 0;
- upperPanel.add(upperRightButtonPanel, homeC);
- upperRightButtonPanel.add(settingsButton, homeC);
- //Settings panel
- JButton homeButtonSettings = new JButton("Terug naar home");
- JButton toggleBackground = new JButton("Verander thema");
- settingsPanel.add(homeButtonSettings, settingsC);
- settingsPanel.add(toggleBackground, settingsC);
- frame.add(homePanel); //Voeg homePanel toe
- //Swing Dimensions
- upperRightButtonPanel.setPreferredSize(new Dimension(300, 100));
- dateTimeLabel.setPreferredSize(new Dimension(300, 100));
- settingsButton.setPreferredSize(new Dimension(300, 100));
- homeButtonSettings.setPreferredSize(new Dimension(200, 50));
- toggleBackground.setPreferredSize(new Dimension(150, 40));
- //Swing Styling
- //new Color(255, 255, 255) = #ffffff
- //new Color(40, 40, 40) = #282828
- //new Color(32, 32, 32) = #202020
- //new Color(51, 51, 51) = #333333
- frame.setBackground(new Color(51, 51, 51));
- homePanel.setBackground(new Color(51, 51, 51));
- settingsPanel.setBackground(new Color(51, 51, 51));
- menubar.setBorder(null);
- menu1.setBorder(null);
- menu3.setBorder(null);
- vironLabel.setBorder(null);
- clock.setBorder(null);
- settingsButton.setBorder(null);
- settingsPanel.setBorder(null);
- menubar.setBackground(new Color(40, 40, 40));
- menu1.setBackground(new Color(40, 40, 40));
- menu3.setBackground(new Color(40, 40, 40));
- vironLabel.setForeground(new Color(255, 255, 255));
- vironLabel.setBackground(new Color(40, 40, 40));
- vironLabel.setFont(new Font("Ubuntu", Font.PLAIN, 24));
- currentPage.setForeground(new Color(255, 255, 255));
- currentPage.setBackground(new Color(40, 40, 40));
- currentPage.setFont(new Font("Ubuntu", Font.PLAIN, 24));
- clock.setForeground(new Color(255, 255, 255));
- clock.setBackground(new Color(40, 40, 40));
- clock.setFont(new Font("Ubuntu", Font.PLAIN, 24));
- upperPanel.setForeground(new Color(255, 255, 255));
- upperPanel.setBackground(new Color(51, 51, 51));
- upperRightButtonPanel.setForeground(new Color(255, 255, 255));
- upperRightButtonPanel.setBackground(new Color(51, 51, 51));
- headerLabel.setForeground(new Color(255, 255, 255));
- headerLabel.setBackground(new Color(51, 51, 51));
- headerLabel.setFont(new Font("Ubuntu", Font.PLAIN, 20));
- pinTouched.setForeground(new Color(255, 255, 255));
- pinTouched.setBackground(new Color(51, 51, 51));
- pinTouched.setFont(new Font("Ubuntu", Font.PLAIN, 20));
- dateTimeLabel.setForeground(new Color(255, 255, 255));
- dateTimeLabel.setBackground(new Color(51, 51, 51));
- dateTimeLabel.setFont(new Font("Ubuntu", Font.PLAIN, 20));
- settingsButton.setForeground(new Color(255, 255, 255));
- settingsButton.setBackground(new Color(51, 51, 51));
- settingsButton.setFont(new Font("Ubuntu", Font.PLAIN, 20));
- settingsButton.setText("<html><span style=\"font-size:32px;\">Instellingen</font><br /><span style=\"font-size:16px;\">Alicia, apparaten</font></html>");
- homeButtonSettings.setForeground(new Color(51, 51, 51));
- homeButtonSettings.setBackground(new Color(255, 255, 255));
- homeButtonSettings.setFont(new Font("Ubuntu", Font.PLAIN, 20));
- toggleBackground.setBackground(new Color(129, 198, 57));
- toggleBackground.setBorder(BorderFactory.createMatteBorder(3, 3, 3, 3, new Color(103,158,45)));
- toggleBackground.setFont(new Font("Ubuntu", Font.PLAIN, 16));
- //Buttons functions
- homeButtonSettings.addActionListener(new ActionListener() { //Home-button op Settings-panel
- @Override
- public void actionPerformed(ActionEvent arg0) {
- frame.remove(settingsPanel);
- frame.add(homePanel);
- currentPage.setText("Home");
- frame.repaint();
- frame.revalidate();
- }
- });
- settingsButton.addActionListener(new ActionListener() { //Settings-button op Home-panel
- @Override
- public void actionPerformed(ActionEvent arg0) {
- frame.remove(homePanel);
- frame.add(settingsPanel);
- currentPage.setText("Settings");
- frame.repaint();
- frame.revalidate();
- }
- });
- JLabel settingsColor = new JLabel("black");
- toggleBackground.addActionListener(new ActionListener() { //Settings-button op Home-panel
- @Override
- public void actionPerformed(ActionEvent arg0) {
- if(settingsColor.getText() == "black"){ //Naar wit
- //Menu
- menubar.setBackground(new Color(230, 230, 230));
- menubar.setForeground(new Color(51, 51, 51));
- menu1.setBackground(new Color(230, 230, 230));
- menu1.setForeground(new Color(51, 51, 51));
- menu2.setBackground(new Color(230, 230, 230));
- menu2.setForeground(new Color(51, 51, 51));
- menu3.setBackground(new Color(230, 230, 230));
- menu3.setForeground(new Color(51, 51, 51));
- vironLabel.setBackground(new Color(230, 230, 230));
- vironLabel.setForeground(new Color(51, 51, 51));
- currentPage.setBackground(new Color(230, 230, 230));
- currentPage.setForeground(new Color(51, 51, 51));
- clock.setBackground(new Color(230, 230, 230));
- clock.setForeground(new Color(51, 51, 51));
- frame.setBackground(new Color(255, 255, 255));
- //Home
- homePanel.setBackground(new Color(255, 255, 255));
- homePanel.setForeground(new Color(51, 51, 51));
- upperPanel.setBackground(new Color(255, 255, 255));
- upperPanel.setForeground(new Color(51, 51, 51));
- upperRightButtonPanel.setBackground(new Color(255, 255, 255));
- upperRightButtonPanel.setForeground(new Color(51, 51, 51));
- dateTimeLabel.setBackground(new Color(255, 255, 255));
- dateTimeLabel.setForeground(new Color(51, 51, 51));
- settingsButton.setBackground(new Color(255, 255, 255));
- settingsButton.setForeground(new Color(51, 51, 51));
- pinTouched.setBackground(new Color(255, 255, 255));
- pinTouched.setForeground(new Color(51, 51, 51));
- //Settings
- settingsPanel.setBackground(new Color(255, 255, 255));
- homeButtonSettings.setBackground(new Color(255, 255, 255));
- homeButtonSettings.setForeground(new Color(51, 51, 51));
- toggleBackground.setForeground(new Color(51, 51, 51));
- settingsColor.setText("white");
- frame.repaint();
- frame.revalidate();
- }
- else if(settingsColor.getText() == "white"){ //Naar zwart
- //Menu
- menubar.setBackground(new Color(40, 40, 40));
- menubar.setForeground(new Color(255, 255, 255));
- menu1.setBackground(new Color(40, 40, 40));
- menu1.setForeground(new Color(255, 255, 255));
- menu2.setBackground(new Color(40, 40, 40));
- menu2.setForeground(new Color(255, 255, 255));
- menu3.setBackground(new Color(40, 40, 40));
- menu3.setForeground(new Color(255, 255, 255));
- vironLabel.setBackground(new Color(40, 40, 40));
- vironLabel.setForeground(new Color(255, 255, 255));
- currentPage.setBackground(new Color(40, 40, 40));
- currentPage.setForeground(new Color(255, 255, 255));
- clock.setBackground(new Color(40, 40, 40));
- clock.setForeground(new Color(255, 255, 255));
- frame.setBackground(new Color(51, 51, 51));
- //Home
- homePanel.setBackground(new Color(51, 51, 51));
- homePanel.setForeground(new Color(255, 255, 255));
- upperPanel.setBackground(new Color(51, 51, 51));
- upperPanel.setForeground(new Color(255, 255, 255));
- upperRightButtonPanel.setBackground(new Color(51, 51, 51));
- upperRightButtonPanel.setForeground(new Color(255, 255, 255));
- dateTimeLabel.setBackground(new Color(51, 51, 51));
- dateTimeLabel.setForeground(new Color(255, 255, 255));
- settingsButton.setBackground(new Color(51, 51, 51));
- settingsButton.setForeground(new Color(255, 255, 255));
- pinTouched.setBackground(new Color(51, 51, 51));
- pinTouched.setForeground(new Color(255, 255, 255));
- //Settings
- settingsPanel.setBackground(new Color(51, 51, 51));
- homeButtonSettings.setBackground(new Color(51, 51, 51));
- homeButtonSettings.setForeground(new Color(255, 255, 255));
- toggleBackground.setForeground(new Color(255, 255, 255));
- settingsColor.setText("black");
- frame.repaint();
- frame.revalidate();
- }
- }
- });
- frame.setPreferredSize(new Dimension(width, height));
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.pack();
- frame.setVisible(true);
- while(true){
- c = Calendar.getInstance();
- dayOfWeek = String.valueOf(c.get(Calendar.DAY_OF_WEEK));
- hour = String.valueOf(c.get(Calendar.HOUR_OF_DAY));
- minute = String.valueOf(c.get(Calendar.MINUTE));
- seconds = String.valueOf(c.get(Calendar.SECOND));
- day = String.valueOf(c.get(Calendar.DAY_OF_MONTH));
- month = String.valueOf(c.get(Calendar.MONTH));
- year = String.valueOf(c.get(Calendar.YEAR));
- if(Integer.parseInt(hour) < 10){
- hour = "0" + hour;
- }
- if(Integer.parseInt(minute) < 10){
- minute = "0" + minute;
- }
- if(Integer.parseInt(dayOfWeek) < 10){
- dayOfWeek = "0" + dayOfWeek;
- }
- if(Integer.parseInt(month) < 10){
- month = "0" + month;
- }
- switch(dayOfWeek){
- case "1": dayName = "Zondag";
- break;
- case "2": dayName = "Maandag";
- break;
- case "3": dayName = "Dinsdag";
- break;
- case "4": dayName = "Woensdag";
- break;
- case "5": dayName = "Donderdag";
- break;
- case "6": dayName = "Vrijdag";
- break;
- case "7": dayName = "Zaterdag";
- break;
- }
- switch(month){
- case "1": monthName = "januari";
- break;
- case "2": monthName = "februari";
- break;
- case "3": monthName = "maart";
- break;
- case "4": monthName = "april";
- break;
- case "5": monthName = "mei";
- break;
- case "6": monthName = "juni";
- break;
- case "7": monthName = "juli";
- break;
- case "8": monthName = "augustus";
- break;
- case "9": monthName = "september";
- break;
- case "10": monthName = "oktober";
- break;
- case "11": monthName = "november";
- break;
- case "12": monthName = "december";
- break;
- }
- clock.setText(String.valueOf(hour) + ":" + String.valueOf(minute));
- dateTimeLabel.setText("<html><span style=\"font-size:32px;\">" + String.valueOf(hour) + ":" + String.valueOf(minute) +"</font><br /><span style=\"font-size:16px;\"> \n" + dayName + " " + String.valueOf(day )+ " " + monthName + " " + String.valueOf(year) + "</font></html>");
- Thread.sleep(1000);
- }
- }
- public static void main(String[] args) throws InterruptedException{
- Viron();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement