Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
 JProgressBar  [new]
Scott Tiger
Member

Откуда: вмваре
Сообщений: 6786
Знатоки свинга, расскажите, как сделать такое - есть прогрессбар, есть баттон. Жму баттон, прогрессбар начинает неспешно ползти (увеличиваться), пока не нажму другую кнопку, и чтобы при этом приложение не блокировалось?
14 май 03, 17:14    [198742]     Ответить | Цитировать Сообщить модератору
 Re: JProgressBar  [new]
Ekuku
Member

Откуда: оттуда
Сообщений: 451
2 Scott :
привет, это делается с помощью методов многопоточности - thread,
если нужны подробности - их есть у меня
14 май 03, 17:19    [198749]     Ответить | Цитировать Сообщить модератору
 Re: JProgressBar  [new]
Ekuku
Member

Откуда: оттуда
Сообщений: 451
вот,блин,тут в конторе нет этой писанины, из дома вышлю..
14 май 03, 17:37    [198773]     Ответить | Цитировать Сообщить модератору
 Re: JProgressBar  [new]
Scott Tiger
Member

Откуда: вмваре
Сообщений: 6786
Спасибо, жду
14 май 03, 17:42    [198781]     Ответить | Цитировать Сообщить модератору
 Re: JProgressBar  [new]
Ekuku
Member

Откуда: оттуда
Сообщений: 451
пример сильно кастрирован, но надеюсь ,суть понятна:

...
import java.applet.*;
import java.io.*;
import java.sql.*;
import java.util.*;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
...

class GraphPanel extends Panel implements Runnable {
...
Thread relaxer = new Thread(this);
Graph graph;
...
GraphPanel(Graph graph){
..
relaxer.start();
this.graph = graph;
...
}

public void run() {
Thread me = Thread.currentThread();
while (relaxer == me) {
try{
..
graph.proc_pbar();
..
}
catch(Exception ex){ }
try {
Thread.sleep(ThreadSleep);
}catch(InterruptedException e) { break; }
}
}

public synchronized void update(Graphics g) {
...
}

public void start() {
...
}

public void stop() {
..
}
}

public class Graph extends Applet {
...
JProgressBar pBar;
GraphPanel panel;
..

public void init() {
..
pBar = new JProgressBar(JProgressBar.HORIZONTAL);
...
pBar.setStringPainted(true);
..
}

void proc_pbar{
..
pBar.setValue(Gr.pBar.getValue() + 1);
..
}
..
}
14 май 03, 22:08    [199013]     Ответить | Цитировать Сообщить модератору
 Re: JProgressBar  [new]
SmaLL
Member

Откуда: Voronezh brewery
Сообщений: 714
Почитай здесь, мне очень помогло
http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html
16 май 03, 14:09    [201180]     Ответить | Цитировать Сообщить модератору
Все форумы / Java Ответить