04. oktober 2003 - 14:03Der er
15 kommentarer og 1 løsning
Filkopierings-proces linie
Jeg skal kopiere et antal filer fra destination_1 til destination_2. Men jeg ville gerne have lavet en proceslinie, som viser hvor langt i kopieringen den er nået. Men hvordan kan man lave det? Et godt eks ville være at foretrække :-)
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Men jeg har et med ProgressMonitor (fra tidligere spørgsmål):
package test;
import java.awt.event.*; import javax.swing.*;
public class ProgTest extends JFrame { private ProgressMonitor progressMonitor; private Timer timer; private DummyEncrypter aes = new DummyEncrypter(); public ProgTest() { super(); progressMonitor = new ProgressMonitor(this, "Encryption", "Running", 0, aes.getLength()); progressMonitor.setProgress(0); timer = new Timer(1000, new TimerListener()); timer.start(); (new EncrypterThread(aes)).start(); aes.encrypt(); } class TimerListener implements ActionListener { public void actionPerformed(ActionEvent evt) { progressMonitor.setProgress(aes.getCurrent()); if (aes.isDone()) { timer.stop(); } } } public static void main(String[] args) throws Exception { ProgTest f = new ProgTest(); f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); f.pack(); f.setVisible(true); } }
class DummyEncrypter { private final static int N = 100; private int n = 0; public int getCurrent() { if (n < N) n++; return n; } public int getLength() { return N; } public boolean isDone() { return (n >= N); } public void encrypt() { while (!isDone()) { try { Thread.sleep(100); } catch (InterruptedException e) { } } } }
class EncrypterThread extends Thread { private DummyEncrypter aes; public EncrypterThread(DummyEncrypter aes) { this.aes = aes; } public void run() { aes.encrypt(); } }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.