Initial commit
This commit is contained in:
@@ -0,0 +1,101 @@
|
||||
package application;
|
||||
|
||||
import java.awt.Desktop;
|
||||
import java.awt.GridLayout;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JFileChooser;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JMenu;
|
||||
import javax.swing.JMenuBar;
|
||||
import javax.swing.JMenuItem;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.SwingUtilities;
|
||||
import javax.swing.filechooser.FileNameExtensionFilter;
|
||||
|
||||
public class FileActions extends JFrame {
|
||||
private JLabel file1Label, file2Label;
|
||||
private JButton selectFile1, selectFile2;
|
||||
private File file1, file2;
|
||||
private JMenuBar menuBar;
|
||||
private JMenu actionsMenu;
|
||||
private JMenuItem openInExcelItem;
|
||||
|
||||
public FileActions() {
|
||||
setTitle("Datei-Auswahl und Aktionen");
|
||||
setSize(400, 200);
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
setLayout(new GridLayout(3, 2));
|
||||
|
||||
file1Label = new JLabel("Datei 1: Keine ausgew<65>hlt");
|
||||
file2Label = new JLabel("Datei 2: Keine ausgew<65>hlt");
|
||||
selectFile1 = new JButton("Datei 1 ausw<73>hlen");
|
||||
selectFile2 = new JButton("Datei 2 ausw<73>hlen");
|
||||
|
||||
// File Chooser f<>r Datei 1 (nur Excel-Dateien)
|
||||
selectFile1.addActionListener(e -> {
|
||||
JFileChooser fileChooser = new JFileChooser();
|
||||
FileNameExtensionFilter filter = new FileNameExtensionFilter("Excel-Dateien", "xls", "xlsx");
|
||||
fileChooser.setFileFilter(filter);
|
||||
if (fileChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
|
||||
file1 = fileChooser.getSelectedFile();
|
||||
file1Label.setText("Datei 1: " + file1.getName());
|
||||
selectFile2.setEnabled(true);
|
||||
}
|
||||
});
|
||||
|
||||
// File Chooser f<>r Datei 2 (im selben Verzeichnis wie Datei 1, nur
|
||||
// Excel-Dateien)
|
||||
selectFile2.setEnabled(false);
|
||||
selectFile2.addActionListener(e -> {
|
||||
if (file1 != null) {
|
||||
JFileChooser fileChooser = new JFileChooser(file1.getParentFile());
|
||||
FileNameExtensionFilter filter = new FileNameExtensionFilter("Excel-Dateien", "xls", "xlsx");
|
||||
fileChooser.setFileFilter(filter);
|
||||
if (fileChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
|
||||
file2 = fileChooser.getSelectedFile();
|
||||
file2Label.setText("Datei 2: " + file2.getName());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
add(selectFile1);
|
||||
add(file1Label);
|
||||
add(selectFile2);
|
||||
add(file2Label);
|
||||
|
||||
// Men<65> erstellen
|
||||
menuBar = new JMenuBar();
|
||||
actionsMenu = new JMenu("Aktionen");
|
||||
openInExcelItem = new JMenuItem("Erste Datei in Excel <20>ffnen");
|
||||
|
||||
actionsMenu.add(openInExcelItem);
|
||||
menuBar.add(actionsMenu);
|
||||
setJMenuBar(menuBar);
|
||||
|
||||
// Aktion: Erste Datei in Excel <20>ffnen
|
||||
openInExcelItem.addActionListener(e -> {
|
||||
if (file1 != null) {
|
||||
try {
|
||||
Desktop.getDesktop().open(file1);
|
||||
} catch (IOException ex) {
|
||||
JOptionPane.showMessageDialog(this, "Fehler beim <20>ffnen der Datei in Excel.", "Fehler",
|
||||
JOptionPane.ERROR_MESSAGE);
|
||||
}
|
||||
} else {
|
||||
JOptionPane.showMessageDialog(this, "Bitte w<>hle zuerst eine Datei aus!", "Fehler",
|
||||
JOptionPane.ERROR_MESSAGE);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
SwingUtilities.invokeLater(() -> {
|
||||
FileActions gui = new FileActions();
|
||||
gui.setVisible(true);
|
||||
});
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user