Java ProgressBar Example

Source code “Loader.class” in “PreLoaderExample.jar” file

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Dimension;

import java.awt.Font;

import java.awt.Toolkit;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.io.File;

import java.io.FileOutputStream;

import java.io.InputStream;

import java.net.HttpURLConnection;

import java.net.URL;

import javax.swing.JFrame;

import javax.swing.JProgressBar;

/**

* @author Serdar TÜRKEL

*/

public class Loader {

Process pr=null;

public Loader(){

try {

URL url=new URL(”http://www.serdarturkel.com/java/Testclass.class“);

HttpURLConnection ucon=(HttpURLConnection)url.openConnection();

InputStream fis = ucon.getInputStream();

int length=ucon.getContentLength();

JProgressBar progress=new JProgressBar(0,0,length);

progress.setString(”% 0″);

progress.setStringPainted(true);

progress.setForeground(Color.blue);

progress.setBackground(Color.white);

Font font=new Font(”Tahoma”, Font.BOLD,12);

progress.setFont(font);

JFrame.setDefaultLookAndFeelDecorated(true);

JFrame jf=new JFrame(”http://www.serdarturkel.com/java/Testclass.class“);

jf.setSize(500,50);

jf.setResizable(false);

jf.setLayout(new BorderLayout());

jf.add(progress, BorderLayout.CENTER);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jf.addWindowListener(new WindowAdapter() {

@Override

public void windowClosing(WindowEvent we){

if(pr!=null){

pr.destroy();

}

System.gc();

System.exit(0);

}

});

Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();

int x=(int)((dim.getWidth()-jf.getWidth())/2);

int y=(int)((dim.getHeight()-jf.getHeight())/2);

jf.setLocation(x, y);

jf.setVisible(true);

Thread.sleep(1000);

File tmpFile = new File(”Testclass.class”);

if(!tmpFile.exists())

tmpFile.createnewFile();

FileOutputStream fos=new FileOutputStream(tmpFile);

int reader=-1;

int lng=0;

while((reader=fis.read())!=-1){

fos.write(reader);

lng++;

int div=(int)((((float)lng)/((float)length))*100f);

progress.setString(”% “+div);

progress.setValue(lng);

Thread.sleep(5);

}

fis.close();

fos.close();

pr = Runtime.getRuntime().exec(”java “+tmpFile.getName().replace(”.class”, “”));

} catch (Exception e) {

e.printStackTrace();

}

catch(Throwable t){

t.printStackTrace();

}

}

public static void main(String args[]){

new Loader();

}

}

download jar file

Security Note: Before from run, download  “http://www.serdarturkel.com/java/Testclass.class” and checking viruses and to do control source code.

Testclass.class” source code “Testclass.java

import javax.swing.JFrame;

import javax.swing.JOptionPane;

public class Testclass {

public Testclass(){

JOptionPane.showMessageDialog(new JFrame(), “This Message in Testclass.class, Serdar TÜRKEL”, “Serdar TÜRKEL Messages”,JOptionPane.INFORMATION_MESSAGE);

}

public static void main(String args[]){

new Testclass();

}

}

  1. No comments yet.

  1. No trackbacks yet.