Merge pull request #1 from Seil0/Bergerboard_calvin

FileOpenDialog added
This commit is contained in:
Jannik 2016-11-21 16:07:38 +01:00 committed by GitHub
commit bf1094ffd5
12 changed files with 87 additions and 3 deletions

16
bin/.gitignore vendored Normal file
View File

@ -0,0 +1,16 @@
/GUI$1.class
/GUI$2.class
/GUI$3.class
/GUI$4.class
/GUI$5.class
/GUI$6.class
/GUI$7.class
/GUI$8.class
/GUI$SoundJLayer.class
/GUI.class
/Main.class
/SoundJLayer.class
/jaggob$1.class
/jaggob$2.class
/jaggob.class
/GUI$9.class

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -39,6 +39,7 @@ import java.util.ArrayList;
import java.util.Properties;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
@ -46,6 +47,8 @@ import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.border.EmptyBorder;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;
import javazoom.jl.player.advanced.AdvancedPlayer;
import javazoom.jl.player.advanced.PlaybackEvent;
@ -60,6 +63,14 @@ public class GUI extends JFrame {
private int anzahlBtn = 0;
private int zY = 0; // zähler für posX
//stuff Calvin////////////////////////////////////////////////
//Init
private JButton btn_browse;
//////////////////////////////////////////////////////////////
ArrayList<JButton> myButton = new ArrayList<JButton>();
ArrayList<String> eventPath = new ArrayList<String>();
@ -153,11 +164,42 @@ public class GUI extends JFrame {
btnNewButton.setBounds(851, 76, 249, 23);
contentPane.add(btnNewButton);
//breite verkleinert
textField = new JTextField();
textField.setBounds(851, 14, 249, 20);
textField.setBounds(851, 14, 210, 20);
contentPane.add(textField);
textField.setColumns(10);
//browse Button hinzufügen
btn_browse = new JButton("...");
btn_browse.setBounds(1065, 14, 20, 20);
btn_browse.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
//erstelle öffnen-Dialog
JFileChooser fileChooser = new JFileChooser();
//erstelle Filter für "Mp3" und "WAV"
fileChooser.setFileFilter(new FileNameExtensionFilter("mp3", "mp3"));
fileChooser.addChoosableFileFilter(new FileNameExtensionFilter("wav", "wav"));
//Nur einzelne Dateien sollen auswählbar sein
fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
//öffnen Dialog anzeigen
fileChooser.showOpenDialog(null);
//Pfad der ausgewählten Datei in Textfeld kopieren
String path = fileChooser.getSelectedFile().getAbsolutePath();
textField.setText(path);
}
});
contentPane.add(btn_browse);
JLabel lblNewLabel = new JLabel("Dateiname");
lblNewLabel.setForeground(Color.WHITE);
lblNewLabel.setFont(new Font("Arial", Font.PLAIN, 14));
@ -206,7 +248,7 @@ public class GUI extends JFrame {
JButton button = new JButton();
myButton.add(button);
button.setText(setName()); //setzte den Button Text auf Wert von setName()
contentPane.add(button); //fügt Butoon zur cPane hinzu
contentPane.add(button); //fügt Button zur cPane hinzu
button.setFont(new Font("Arial", Font.PLAIN, 18)); //Schriftart und Größe
button.setBounds(getPosX(), getPosY(), 200, 50); //position (x, y(j+160), width, height)
button.setVisible(true);
@ -338,10 +380,34 @@ public class GUI extends JFrame {
public SoundJLayer(String filePath)
{
this.filePath = filePath;
}
}
public void play()
{
//versuche von Pfad zu laden (unsauber, funktioniert aber)
try{
String urlAsString = null;
File temp = new File(filePath);
urlAsString = "file:///"+temp.getAbsolutePath();
//urlAsString.replaceAll(" ", "%20");
System.out.println(urlAsString);
this.player = new AdvancedPlayer(
new java.net.URL(urlAsString).openStream(),
javazoom.jl.player.FactoryRegistry.systemRegistry().createAudioDevice()
);
this.player.setPlayBackListener(this);
this.playerThread = new Thread(this, "AudioPlayerThread");
this.playerThread.start();
}catch(Exception e){
//Debug Nachricht, falls lesen aus Pfad nicht funktioniert
System.out.println("Failed to load from path: checking home directory.");
try
{
String urlAsString =
@ -365,6 +431,8 @@ public class GUI extends JFrame {
{
ex.printStackTrace();
}
}
}
// PlaybackListener members