Do you have any simple sample Progress bar example?
Progress bar for dowload file in local hard disc to other hard disc in diffrent partition...
Thank...
4 Replies - 8051 Views - Last Post: 17 March 2008 - 11:33 PM
#1
Do you have any simple sample Progress bar example?
Posted 16 March 2008 - 11:21 PM
Replies To: Do you have any simple sample Progress bar example?
#2
Re: Do you have any simple sample Progress bar example?
Posted 17 March 2008 - 02:40 AM
#3
Re: Do you have any simple sample Progress bar example?
Posted 17 March 2008 - 04:50 AM
This website I access so many time but I still can catch where should my receiving file code should put into....
Then the second problem is The percentage complete how can it be calculated?
Thank.
Then the second problem is The percentage complete how can it be calculated?
Thank.
#4
Re: Do you have any simple sample Progress bar example?
Posted 17 March 2008 - 05:37 AM
This is the time to ask for your code.
#5
Re: Do you have any simple sample Progress bar example?
Posted 17 March 2008 - 11:33 PM
1lacca, on 17 Mar, 2008 - 05:37 AM, said:
This is the time to ask for your code.
Yes sir,
This is the code for read a file from "/root/test.txt" and write out into a file called "/root/abc.txt". It tested runable without bug
Quote
package test;
import java.io.*;
public class Test1 {
public static void main(String [] args)
{
File file1 = new File("/root/test.txt");
try{
BufferedReader in = new BufferedReader(new FileReader(file1));
BufferedWriter out = new BufferedWriter(new FileWriter("/root/abc.txt"));
String line = in.readLine();
while(line !=null)
{
System.out.println(line);
out.write(line+"\n");
line = in.readLine();
}
in.close();
out.close();
}
catch(Exception e)
{
}
}
}
import java.io.*;
public class Test1 {
public static void main(String [] args)
{
File file1 = new File("/root/test.txt");
try{
BufferedReader in = new BufferedReader(new FileReader(file1));
BufferedWriter out = new BufferedWriter(new FileWriter("/root/abc.txt"));
String line = in.readLine();
while(line !=null)
{
System.out.println(line);
out.write(line+"\n");
line = in.readLine();
}
in.close();
out.close();
}
catch(Exception e)
{
}
}
}
The code support put into which part? I choose the ProgressMonitorDemo code sample...
Here is the source from java.sun
Quote
package components;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.beans.*;
import java.util.Random;
public class ProgressMonitorDemo extends JPanel
implements ActionListener,
PropertyChangeListener {
private ProgressMonitor progressMonitor;
private JButton startButton;
private JTextArea taskOutput;
private Task task;
class Task extends SwingWorker<Void, Void> {
@Override
public Void doInBackground() {
Random random = new Random();
int progress = 0;
setProgress(0);
try {
Thread.sleep(1000);
while (progress < 100 && !isCancelled()) {
//Sleep for up to one second.
Thread.sleep(random.nextInt(1000));
//Make random progress.
progress += random.nextInt(10);
setProgress(Math.min(progress, 100));
}
} catch (InterruptedException ignore) {}
return null;
}
@Override
public void done() {
Toolkit.getDefaultToolkit().beep();
startButton.setEnabled(true);
progressMonitor.setProgress(0);
}
}
public ProgressMonitorDemo() {
super(new BorderLayout());
//Create the demo's UI.
startButton = new JButton("Start");
startButton.setActionCommand("start");
startButton.addActionListener(this);
taskOutput = new JTextArea(5, 20);
taskOutput.setMargin(new Insets(5,5,5,5));
taskOutput.setEditable(false);
add(startButton, BorderLayout.PAGE_START);
add(new JScrollPane(taskOutput), BorderLayout.CENTER);
setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));
}
/**
* Invoked when the user presses the start button.
*/
public void actionPerformed(ActionEvent evt) {
progressMonitor = new ProgressMonitor(ProgressMonitorDemo.this,
"Running a Long Task",
"", 0, 100);
progressMonitor.setProgress(0);
task = new Task();
task.addPropertyChangeListener(this);
task.execute();
startButton.setEnabled(false);
}
/**
* Invoked when task's progress property changes.
*/
public void propertyChange(PropertyChangeEvent evt) {
if ("progress" == evt.getPropertyName() ) {
int progress = (Integer) evt.getNewValue();
progressMonitor.setProgress(progress);
String message =
String.format("Completed %d%%.\n", progress);
progressMonitor.setNote(message);
taskOutput.append(message);
if (progressMonitor.isCanceled() || task.isDone()) {
Toolkit.getDefaultToolkit().beep();
if (progressMonitor.isCanceled()) {
task.cancel(true);
taskOutput.append("Task canceled.\n");
} else {
taskOutput.append("Task completed.\n");
}
startButton.setEnabled(true);
}
}
}
/**
* Create the GUI and show it. For thread safety,
* this method should be invoked from the
* event-dispatching thread.
*/
private static void createAndShowGUI() {
//Create and set up the window.
JFrame frame = new JFrame("ProgressMonitorDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Create and set up the content pane.
JComponent newContentPane = new ProgressMonitorDemo();
newContentPane.setOpaque(true); //content panes must be opaque
frame.setContentPane(newContentPane);
//Display the window.
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
//Schedule a job for the event-dispatching thread:
//creating and showing this application's GUI.
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.beans.*;
import java.util.Random;
public class ProgressMonitorDemo extends JPanel
implements ActionListener,
PropertyChangeListener {
private ProgressMonitor progressMonitor;
private JButton startButton;
private JTextArea taskOutput;
private Task task;
class Task extends SwingWorker<Void, Void> {
@Override
public Void doInBackground() {
Random random = new Random();
int progress = 0;
setProgress(0);
try {
Thread.sleep(1000);
while (progress < 100 && !isCancelled()) {
//Sleep for up to one second.
Thread.sleep(random.nextInt(1000));
//Make random progress.
progress += random.nextInt(10);
setProgress(Math.min(progress, 100));
}
} catch (InterruptedException ignore) {}
return null;
}
@Override
public void done() {
Toolkit.getDefaultToolkit().beep();
startButton.setEnabled(true);
progressMonitor.setProgress(0);
}
}
public ProgressMonitorDemo() {
super(new BorderLayout());
//Create the demo's UI.
startButton = new JButton("Start");
startButton.setActionCommand("start");
startButton.addActionListener(this);
taskOutput = new JTextArea(5, 20);
taskOutput.setMargin(new Insets(5,5,5,5));
taskOutput.setEditable(false);
add(startButton, BorderLayout.PAGE_START);
add(new JScrollPane(taskOutput), BorderLayout.CENTER);
setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));
}
/**
* Invoked when the user presses the start button.
*/
public void actionPerformed(ActionEvent evt) {
progressMonitor = new ProgressMonitor(ProgressMonitorDemo.this,
"Running a Long Task",
"", 0, 100);
progressMonitor.setProgress(0);
task = new Task();
task.addPropertyChangeListener(this);
task.execute();
startButton.setEnabled(false);
}
/**
* Invoked when task's progress property changes.
*/
public void propertyChange(PropertyChangeEvent evt) {
if ("progress" == evt.getPropertyName() ) {
int progress = (Integer) evt.getNewValue();
progressMonitor.setProgress(progress);
String message =
String.format("Completed %d%%.\n", progress);
progressMonitor.setNote(message);
taskOutput.append(message);
if (progressMonitor.isCanceled() || task.isDone()) {
Toolkit.getDefaultToolkit().beep();
if (progressMonitor.isCanceled()) {
task.cancel(true);
taskOutput.append("Task canceled.\n");
} else {
taskOutput.append("Task completed.\n");
}
startButton.setEnabled(true);
}
}
}
/**
* Create the GUI and show it. For thread safety,
* this method should be invoked from the
* event-dispatching thread.
*/
private static void createAndShowGUI() {
//Create and set up the window.
JFrame frame = new JFrame("ProgressMonitorDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Create and set up the content pane.
JComponent newContentPane = new ProgressMonitorDemo();
newContentPane.setOpaque(true); //content panes must be opaque
frame.setContentPane(newContentPane);
//Display the window.
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
//Schedule a job for the event-dispatching thread:
//creating and showing this application's GUI.
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}
Thank you....
Page 1 of 1
|
|

New Topic/Question
Reply




MultiQuote




|