From dedd4f1036f851651ae2cf547329bf3a380c7d98 Mon Sep 17 00:00:00 2001 From: tspitzer Date: Thu, 10 Oct 2013 10:21:17 +0200 Subject: Die Anwendung wird nun korrekt beendet. Bei Schließen der Upload- und Downloadfenster wird der jeweilige Vorgang nun abgebrochen. --- Dozentenmodul/src/GUI/FTPDownloader.java | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) (limited to 'Dozentenmodul/src/GUI/FTPDownloader.java') diff --git a/Dozentenmodul/src/GUI/FTPDownloader.java b/Dozentenmodul/src/GUI/FTPDownloader.java index 5f062ff0..4e676ace 100644 --- a/Dozentenmodul/src/GUI/FTPDownloader.java +++ b/Dozentenmodul/src/GUI/FTPDownloader.java @@ -34,6 +34,8 @@ import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; @SuppressWarnings("serial") public class FTPDownloader extends JFrame implements PropertyChangeListener { @@ -51,6 +53,7 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { String downloadPath=""; String filename=""; static String arg=""; + DownloadTask task; /** * Launch the application. */ @@ -71,6 +74,15 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { * Create the frame. */ public FTPDownloader(String name) { + addWindowListener(new WindowAdapter() { + @Override + public void windowClosing(WindowEvent e) { + + task.cancel(true); + dispose(); + } + }); + setResizable(false); //setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); filename=name; @@ -141,17 +153,29 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { contentPanel.add(downspeed); { JPanel buttonPane = new JPanel(); - buttonPane.setBackground(Color.WHITE); + buttonPane.setBackground(UIManager.getColor("Button.background")); buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); getContentPane().add(buttonPane, BorderLayout.SOUTH); { JButton okButton = new JButton("OK"); + okButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent arg0) { + dispose(); + } + }); okButton.setActionCommand("OK"); buttonPane.add(okButton); getRootPane().setDefaultButton(okButton); } { JButton cancelButton = new JButton("Zur\u00FCck"); + cancelButton.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + + task.cancel(true); + dispose(); + } + }); cancelButton.setActionCommand("Cancel"); buttonPane.add(cancelButton); } @@ -163,9 +187,10 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { private void buttonDownloadActionPerformed(ActionEvent event) { progressBar.setValue(0); - DownloadTask task = new DownloadTask(host, port, username, password,downloadPath+filename, lblNewLabel.getText(), this); + task = new DownloadTask(host, port, username, password,downloadPath+filename, lblNewLabel.getText(), this); task.addPropertyChangeListener(this); task.execute(); + } -- cgit v1.2.3-55-g7522