From 172b9a3470dd1f24119d98f500b8ba4e5e50403b Mon Sep 17 00:00:00 2001 From: aareschluchtje Date: Wed, 25 Feb 2015 15:27:05 +0100 Subject: [PATCH] Added Info JFrame Het JFrame met informatie over de artiest en event toegevoegd. Meer info over het integreren staat in de comments bij TabbedPane --- ArtistPanel.java | 31 ++++++++++++++++++++++++++ EventPanel.java | 58 ++++++++++++++++++++++++++++++++++++++++++++++++ TabbedPane.java | 29 ++++++++++++++++++++++++ 3 files changed, 118 insertions(+) create mode 100644 ArtistPanel.java create mode 100644 EventPanel.java create mode 100644 TabbedPane.java diff --git a/ArtistPanel.java b/ArtistPanel.java new file mode 100644 index 0000000..25de98b --- /dev/null +++ b/ArtistPanel.java @@ -0,0 +1,31 @@ + + +import java.awt.BorderLayout; +import java.awt.Font; + +import javax.swing.BoxLayout; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JSeparator; +import javax.swing.SwingConstants; + +public class ArtistPanel extends JPanel{ + + public ArtistPanel(Event event) + { + super(new BorderLayout()); + JLabel name = new JLabel(event.getArtist().getName()); + + name.setFont(new Font("Dialog", Font.BOLD, 20)); + JLabel description = new JLabel("" + " Genre: " + event.getArtist().getGenre() + "

Beschrijving

" + event.getArtist().getDescription() + "

achtergrondinfo

" + event.getArtist().getBackground() + ""); + description.setFont(new Font("Dialog", Font.PLAIN, 12)); + JPanel panel = new JPanel(); + panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS)); + JLabel photo = new JLabel(event.getArtist().getImage()); + panel.add(name); + panel.add(new JSeparator(SwingConstants.HORIZONTAL)); + add(photo, BorderLayout.EAST); + add(description, BorderLayout.CENTER); + add(panel, BorderLayout.NORTH); + } +} diff --git a/EventPanel.java b/EventPanel.java new file mode 100644 index 0000000..688e502 --- /dev/null +++ b/EventPanel.java @@ -0,0 +1,58 @@ + + +import java.awt.BorderLayout; +import java.awt.Font; +import java.text.SimpleDateFormat; + +import javax.swing.BoxLayout; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JSeparator; +import javax.swing.SwingConstants; + +public class EventPanel extends JPanel{ + + private static final long serialVersionUID = 504733981352439417L; + + public EventPanel(Event event) + { + super(new BorderLayout()); + SimpleDateFormat dateformatter = new SimpleDateFormat("dd-MM-yyyy"); + SimpleDateFormat timeformatter = new SimpleDateFormat("HH:mm"); + JPanel box1 = new JPanel(); + box1.setLayout(new BoxLayout(box1, BoxLayout.PAGE_AXIS)); + JPanel box2 = new JPanel(); + box2.setLayout(new BoxLayout(box2, BoxLayout.LINE_AXIS)); + JPanel box3 = new JPanel(); + box3.setLayout(new BoxLayout(box3, BoxLayout.PAGE_AXIS)); + JPanel row = new JPanel(); + row.setLayout(new BoxLayout(row, BoxLayout.LINE_AXIS)); + JPanel panel = new JPanel(); + panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS)); + JLabel title = new JLabel("" + event.getEventName() + ""); + JLabel date = new JLabel("" + dateformatter.format(event.getEndDate().getTime()) + ""); + JLabel data = new JLabel(" " + event.getStage().getName() + "

" + event.getArtist().getName() + "

" + event.getExpectedPopularity() + "

" + timeformatter.format(event.getStartDate().getTime()) + " - " + timeformatter.format(event.getEndDate().getTime()) + "

"); + JLabel text = new JLabel(" Podium:

Artiest:

Populariteit:

Tijd:

"); + box2.setAlignmentX(LEFT_ALIGNMENT); + date.setFont(new Font("Dialog", Font.BOLD, 15)); + row.setAlignmentX(LEFT_ALIGNMENT); + date.setAlignmentX(RIGHT_ALIGNMENT); + title.setFont(new Font("Dialog", Font.BOLD, 20)); + text.setFont(new Font("Dialog", Font.BOLD, 15)); + data.setFont(new Font("Dialog", Font.PLAIN, 15)); + JLabel description = new JLabel(" Beschrijving

" + event.getDescription() + ""); + description.setFont(new Font("Dialog", Font.PLAIN, 12)); + row.add(title); + row.add(date); + box1.add(row); + box1.add(new JSeparator(SwingConstants.HORIZONTAL)); + box2.add(text); + box2.add(data); + box3.add(new JSeparator(SwingConstants.HORIZONTAL)); + box3.add(description); + panel.add(box1); + panel.add(box2); + panel.add(box3); + add(panel, BorderLayout.CENTER); + } +} diff --git a/TabbedPane.java b/TabbedPane.java new file mode 100644 index 0000000..bf01925 --- /dev/null +++ b/TabbedPane.java @@ -0,0 +1,29 @@ + +//een jframe met info, heeft alleen een event object (het desbetreffende event) en een boolean met daarin true of false (slaande op je wel of niet met het event wilt starten) nodig. +//Voorderest heeft dit niks nodig en is het een apart openend JFrame wat gewoon weer afgesloten kan worden. +import javax.swing.JFrame; +import javax.swing.JTabbedPane; + +public class TabbedPane extends JFrame{ + + public TabbedPane(Event event, boolean eventSelected) + { + super("info GUI"); + JTabbedPane tab = new JTabbedPane(); + tab.add("Event", new EventPanel(event)); + tab.add("Artist", new ArtistPanel(event)); + if(eventSelected) + { + tab.setSelectedIndex(0); + } + else + { + tab.setSelectedIndex(1); + } + setContentPane(tab); + setSize(480, 410); + setVisible(true); + } +} +//"Event", new EventPanel("Introductie", "Hoofdpodium", "14:00-15:00", "Populair", "Paul Lindelauf", "25-02-2015", "Het begin van het festival, wordt gepresenteerd door Paul Lindelauf. En ik moet nog een hele hoop onzin toevoegen om dit goed te kunnen testen, dus daarom doe ik dat nu ook maar even. En nog een hele hoop informatie vanwege REDENEN. En waarom de fuck hij nu wel ineens normaal kan doen weet ik niet, maar zal dus maar voor de volgende keer onthouden minder onzin te typen." +//"Artist", new ArtistPanel("Paul Lindelauf", "Paultje Lindelauf

Paultje is de ster van de show en opent de voorstelling. Hierna komen de geweldige artiesten.

", "Achtergrondinformatie

Paul staat bekend als de man die zijn leerlingen treiterde met zijn diagrammen, leiderschap en Excel.", "src/content/Paul.jpg" \ No newline at end of file