下載進(jìn)度條java代碼,java實(shí)現(xiàn)下載進(jìn)度條

使用java編寫一個(gè)多線程下載器,需要在URL欄中輸入網(wǎng)址,然后通過網(wǎng)址下載。該怎么實(shí)現(xiàn),求源代碼

swing做前臺(tái)界面。后臺(tái)使用java.net中的HTTPConnection下載就OK。下載可以用getInputStream()獲取數(shù)據(jù),然后寫入文件。只提供思路,無代碼。不搞java好多年……

向陽網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,向陽網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為向陽上千多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的向陽做網(wǎng)站的公司定做!

Java中如何實(shí)現(xiàn)進(jìn)度條效果

代碼如下:import java.awt.Color; import java.awt.Toolkit; import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JProgressBar; import javax.swing.JWindow; @SuppressWarnings("serial") public class Demo extends JWindow implements Runnable { // 定義加載窗口大小 public static final int LOAD_WIDTH = 455; public static final int LOAD_HEIGHT = 295; // 獲取屏幕窗口大小 public static final int WIDTH = Toolkit.getDefaultToolkit().getScreenSize().width; public static final int HEIGHT = Toolkit.getDefaultToolkit().getScreenSize().height; // 定義進(jìn)度條組件 public JProgressBar progressbar; // 定義標(biāo)簽組件 public JLabel label; // 構(gòu)造函數(shù) public Demo() { // 創(chuàng)建標(biāo)簽,并在標(biāo)簽上放置一張圖片 label = new JLabel(new ImageIcon("images/background.jpg")); label.setBounds(0, 0, LOAD_WIDTH, LOAD_HEIGHT - 15); // 創(chuàng)建進(jìn)度條 progressbar = new JProgressBar(); // 顯示當(dāng)前進(jìn)度值信息 progressbar.setStringPainted(true); // 設(shè)置進(jìn)度條邊框不顯示 progressbar.setBorderPainted(false); // 設(shè)置進(jìn)度條的前景色 progressbar.setForeground(new Color(0, 210, 40)); // 設(shè)置進(jìn)度條的背景色 progressbar.setBackground(new Color(188, 190, 194)); progressbar.setBounds(0, LOAD_HEIGHT - 15, LOAD_WIDTH, 15); // 添加組件 this.add(label); this.add(progressbar); // 設(shè)置布局為空 this.setLayout(null); // 設(shè)置窗口初始位置 this.setLocation((WIDTH - LOAD_WIDTH) / 2, (HEIGHT - LOAD_HEIGHT) / 2); // 設(shè)置窗口大小 this.setSize(LOAD_WIDTH, LOAD_HEIGHT); // 設(shè)置窗口顯示 this.setVisible(true); } public static void main(String[] args) { Demo t = new Demo(); new Thread(t).start(); } @Override public void run() { for (int i = 0; i 100; i++) { try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } progressbar.setValue(i); } JOptionPane.showMessageDialog(this, "加載完成"); this.dispose(); } } 效果圖:

請(qǐng)問一個(gè)java的文件下載的問題,為什么我的下載每次都看不到進(jìn)度條,而是一下子就下好了呢?

建立新的線程來處理下載。去看Thread的API有詳細(xì)說明。例如本來是:

downloading();

System.out.println("下載完成");

就改成:

class DownloadListener {//這個(gè)class自己找個(gè)地方放。

public void downloadInProgress(double percent) {

System.out.println("已下載" + percent);

}

public void downloadCompleted() {

System.out.println("已下載完成");

}

}

//從這里開始應(yīng)該被改成的內(nèi)容

DownloadListener downloadListener = new DownloadListener();

new Thread() {

public void run() { //這里寫第二線程的內(nèi)容

downloading(downloadListener);//于是downloadListener被傳入了downloading函數(shù),就可以在downloading函數(shù)內(nèi)部通過呼叫downloadListener的downloadInProgress和downloadCompleted來通知第一線程下載情況。

}

}.start(); //第一線程會(huì)在這里啟動(dòng)第二線程,然后不管第二線程執(zhí)行了什么是否完成,直接執(zhí)行下一句。

System.out.println("第二線程已經(jīng)啟動(dòng)");

//例子里很多System.out.println是為了簡(jiǎn)明。實(shí)際情況一般是修改一個(gè)給用戶看的狀態(tài)欄JLabel,這里下載進(jìn)行中時(shí),應(yīng)該是更新一個(gè)JProgressBar。

名稱欄目:下載進(jìn)度條java代碼,java實(shí)現(xiàn)下載進(jìn)度條
網(wǎng)頁鏈接:http://m.kartarina.com/article4/hegooe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化定制開發(fā)網(wǎng)站內(nèi)鏈網(wǎng)站改版網(wǎng)站策劃面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
主站蜘蛛池模板: 亚洲国产精品无码专区在线观看| 亚洲av无码av在线播放| 下载天堂国产AV成人无码精品网站 | 亚洲成?v人片天堂网无码| 亚洲精品国产日韩无码AV永久免费网| 伊人久久综合精品无码AV专区| 无码熟妇人妻AV影音先锋| 久久久久琪琪去精品色无码| 国产精品无码无卡在线观看久| 亚洲AV无码国产精品色午友在线| 国产精品久久无码一区二区三区网 | 亚洲AV无码乱码国产麻豆穿越| 亚洲精品无码久久久久秋霞 | 麻豆aⅴ精品无码一区二区| 国产爆乳无码视频在线观看3| 无码少妇一区二区三区浪潮AV| 人妻无码久久久久久久久久久 | 国产精品99无码一区二区| 少妇爆乳无码专区| 99久久亚洲精品无码毛片| 精品无码久久久久久久动漫 | 亚洲精品无码不卡| 中文字幕无码不卡在线| 国产精品无码一本二本三本色| 免费看又黄又无码的网站| 亚洲精品无码乱码成人| 国产成人无码精品一区在线观看| 国产精品爽爽va在线观看无码| 无码里番纯肉h在线网站| 亚洲GV天堂GV无码男同| 免费无码又爽又刺激高潮视频| 日韩精品真人荷官无码| 精品日韩亚洲AV无码| 99精品一区二区三区无码吞精 | 最新亚洲春色Av无码专区| 98久久人妻无码精品系列蜜桃| 亚洲AV无码1区2区久久| 久久久无码一区二区三区| 亚洲综合无码一区二区| 亚洲久热无码av中文字幕| 亚洲最大中文字幕无码网站|