diff options
| author | tspitzer | 2013-10-17 14:41:12 +0200 |
|---|---|---|
| committer | tspitzer | 2013-10-17 14:41:12 +0200 |
| commit | 9f7c44a1afe2a599a9e0249b480cfa3b4155e9e6 (patch) | |
| tree | cc675d389f18ffea779dbd29530da99468927995 /Dozentenmodul/src/GUI/FTPDownloader.java | |
| parent | Methode hinzugefügt um das Satelliten Script auszuführen (diff) | |
| download | tutor-module-9f7c44a1afe2a599a9e0249b480cfa3b4155e9e6.tar.gz tutor-module-9f7c44a1afe2a599a9e0249b480cfa3b4155e9e6.tar.xz tutor-module-9f7c44a1afe2a599a9e0249b480cfa3b4155e9e6.zip | |
Version vom 17.10
-Hinweise eingefügt
-Freigabe GUI ohne funktionalität eingefügt
-Fenster zentriert
-Download und Upload um Informationen erweitert
Diffstat (limited to 'Dozentenmodul/src/GUI/FTPDownloader.java')
| -rw-r--r-- | Dozentenmodul/src/GUI/FTPDownloader.java | 94 |
1 files changed, 81 insertions, 13 deletions
diff --git a/Dozentenmodul/src/GUI/FTPDownloader.java b/Dozentenmodul/src/GUI/FTPDownloader.java index 9cd38d1c..3b053d7d 100644 --- a/Dozentenmodul/src/GUI/FTPDownloader.java +++ b/Dozentenmodul/src/GUI/FTPDownloader.java @@ -2,7 +2,9 @@ package GUI; import java.awt.BorderLayout;
import java.awt.Color;
+import java.awt.Dimension;
import java.awt.FlowLayout;
+import java.awt.Toolkit;
import java.io.File;
import javax.swing.JButton;
import javax.swing.JFileChooser;
@@ -39,6 +41,14 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { String filename="";
static String arg="";
DownloadTask task;
+ JLabel bytesreadlbl;
+ JLabel lblNewLabel_3;
+ JLabel labelVerbleibend;
+ long filesize;
+ double speed;
+ long bytesread;
+ JLabel labelZeit;
+ boolean taskrun=false;
/**
* Launch the application.
*/
@@ -62,8 +72,10 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
-
+ if(taskrun==true)
+ {
task.cancel(true);
+ }
dispose();
}
});
@@ -83,7 +95,11 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { //filename=name;
setBackground(Color.WHITE);
setTitle("Downloader");
- setBounds(100, 100, 450, 218);
+ Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
+ int top=(screenSize.height - 603) / 2;
+ int left=(screenSize.width - 250) / 2;
+ setBounds(left, top, 603, 250);
+ //setBounds(100, 100, 603, 250);
getContentPane().setLayout(new BorderLayout());
contentPanel.setBackground(Color.WHITE);
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
@@ -119,14 +135,14 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { }
});
- btnDownloadStarten.setBounds(10, 106, 141, 23);
+ btnDownloadStarten.setBounds(10, 155, 141, 23);
contentPanel.add(btnDownloadStarten);
progressBar = new JProgressBar(0,100);
progressBar.setStringPainted(true);
- progressBar.setBounds(10, 45, 414, 30);
+ progressBar.setBounds(10, 45, 577, 30);
contentPanel.add(progressBar);
JLabel lblDownloadgeschwindigkeit = new JLabel("Downloadgeschwindigkeit:");
@@ -134,8 +150,40 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { contentPanel.add(lblDownloadgeschwindigkeit);
downspeed = new JLabel("0");
- downspeed.setBounds(169, 81, 46, 14);
+ downspeed.setBounds(169, 81, 95, 14);
contentPanel.add(downspeed);
+
+ JLabel lblNewLabel_1 = new JLabel("Fertig:");
+ lblNewLabel_1.setBounds(10, 106, 46, 14);
+ contentPanel.add(lblNewLabel_1);
+
+ bytesreadlbl = new JLabel("");
+ bytesreadlbl.setBounds(66, 106, 108, 14);
+ contentPanel.add(bytesreadlbl);
+
+ JLabel lblNewLabel_2 = new JLabel("von:");
+ lblNewLabel_2.setBounds(179, 106, 46, 14);
+ contentPanel.add(lblNewLabel_2);
+
+ lblNewLabel_3 = new JLabel("");
+ lblNewLabel_3.setBounds(235, 106, 108, 14);
+ contentPanel.add(lblNewLabel_3);
+
+ JLabel lblMbVerbleibend = new JLabel("Verbleibend:");
+ lblMbVerbleibend.setBounds(353, 106, 71, 14);
+ contentPanel.add(lblMbVerbleibend);
+
+ labelVerbleibend = new JLabel("");
+ labelVerbleibend.setBounds(434, 106, 108, 14);
+ contentPanel.add(labelVerbleibend);
+
+ JLabel lblGeschtzteVerbleibendeZeit = new JLabel("Gesch\u00E4tzte Verbleibende Zeit:");
+ lblGeschtzteVerbleibendeZeit.setBounds(274, 81, 150, 14);
+ contentPanel.add(lblGeschtzteVerbleibendeZeit);
+
+ labelZeit = new JLabel("");
+ labelZeit.setBounds(425, 81, 117, 14);
+ contentPanel.add(labelZeit);
{
JPanel buttonPane = new JPanel();
buttonPane.setBackground(UIManager.getColor("Button.background"));
@@ -156,8 +204,10 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { JButton cancelButton = new JButton("Zur\u00FCck");
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
-
+ if(taskrun==true)
+ {
task.cancel(true);
+ }
dispose();
}
});
@@ -175,19 +225,23 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { task = new DownloadTask(host, port, username, password,downloadPath+filename, lblNewLabel.getText(), this);
task.addPropertyChangeListener(this);
task.execute();
-
+ taskrun=true;
}
-
+
public void propertyChange(PropertyChangeEvent arg0) {
+
+
if ("progress" == arg0.getPropertyName()) {
int progress = (Integer) arg0.getNewValue();
progressBar.setValue(progress);
}
if("speed"==arg0.getPropertyName()){
- double speed=(double)arg0.getNewValue();
+ speed=(double)arg0.getNewValue();
//if(speed<=1){
- downspeed.setText(String.valueOf(speed));
+
+ downspeed.setText(String.valueOf(speed).substring(0,String.valueOf(speed).lastIndexOf(".")+3)+" MB/s");
+
// }else
//{
//double MBSpeed=speed/1024;
@@ -195,9 +249,23 @@ public class FTPDownloader extends JFrame implements PropertyChangeListener { //}
}
+ if("bytesread"==arg0.getPropertyName())
+ {
+ bytesread=(long)arg0.getNewValue();
+ bytesreadlbl.setText((bytesread/1024/1024)+" MB");
+ labelVerbleibend.setText(((filesize/1024/1024)-(bytesread/1024/1024))+" MB");
+
+
+ labelZeit.setText(String.valueOf(((((filesize/1024/1024)-(bytesread/1024/1024))/speed)/60)+1).substring(0,String.valueOf((((filesize/1024/1024)-(bytesread/1024/1024))/speed)/60).lastIndexOf("."))+ " Minuten");
+
+
+ }
+ if("filesize"==arg0.getPropertyName())
+ {
+ filesize=(long)arg0.getNewValue();
+ lblNewLabel_3.setText((filesize/1024/1024)+" MB");
+
+ }
}
-
-
-
}
\ No newline at end of file |
