Úvod do JProgressBar

JProgressBar je považován za součást Java Swing, což je balíček. Zobrazuje vizuálně postup některých z uvedených úkolů. Kromě toho ukazuje procento dokončení uvedeného úkolu. Panel v JProgressBar se vyplní, jakmile se uvedený úkol dostane do fáze dokončení. JProgressBar kromě zobrazení procenta dokončení také zobrazí nějaký text.

Swing API

API pro monitorování pokroku programu Swing zahrnuje celkem tři třídy, které usnadňují použití indikátorů průběhu. Podtřída JProgressBar, JComponent, je ve skutečnosti považována za grafickou komponentu, která demonstruje postup operace. Navíc se také může začlenit do ostatních grafických komponent.

Konstruktory JProgressBar

Konstruktéři JProgressBar jsou níže:

  1. JProgressBar () : Tento konstruktor se používá k vytvoření ukazatele průběhu bez jakéhokoli textu na něm.
  2. JProgressBar (int orientace) : Tento konstruktor se používá k vytvoření ukazatele průběhu spolu s uvedenou orientací v jeho parametru. V případě, že je jako parametr uveden VERTICAL, vytvoří se vertikální lišta průběhu a v případě SwingConstants.Horizontal je uvedena jako parametr, pak se vytvoří vodorovná lišta průběhu.
  3. JProgressBar (int min, int max ): Tento konstruktor se používá k vytvoření ukazatele průběhu spolu s uvedeným minimem i maximální hodnotou.
  4. JProgressBar (int orientace, int min, int max) : Tento konstruktor se používá k vytvoření ukazatele průběhu spolu s uvedeným minimem i maximální hodnotou a také zadanou orientací v parametru. Pokud je jako parametr uveden SwingConstants.VERTICAL, vytvoří se vertikální lišta průběhu a v případě SwingConstants. HORIZONTÁL je uveden jako parametr, poté se vytvoří vodorovný ukazatel průběhu.

Metody JProgressBar

Metody JProgressBar jsou následující:

  • int getMaximum (): Tato metoda se používá k vrácení maximální hodnoty ukazatele průběhu.
  • int getMinimum () : Tato metoda se používá k vrácení minimální hodnoty ukazatele průběhu.
  • String getString () : Tato metoda se používá k vrácení řetězcové reprezentace aktuální hodnoty lišty průběhu.
  • void setMaximum (int t) : Tato metoda se používá k nastavení maximální hodnoty ukazatele průběhu na hodnotu t.
  • void setMinimum (int t) : Tato metoda se používá k nastavení minimální hodnoty ukazatele průběhu na hodnotu t.
  • void setValue (int t) : Tato metoda se používá k nastavení aktuální hodnoty ukazatele průběhu na hodnotu t.
  • void setString (String t) : Tato metoda se používá k nastavení hodnoty řetězce String na hodnotu t, což je String.

Níže je uvedena syntaxe třídy javax.swing.JProgressBar.

Syntax:

public class JProgressBar extends JComponent implements SwingConstants, Accessible

Příklady JProgress

Zde je několik příkladů JProgressBar, které jsou uvedeny níže s implementací:

Příklad č. 1 - Horizontální ukazatel průběhu

Kód:

import java.awt.*;
import javax.swing.*;
public class Progress
(
public static void main(String() args)
(
final int max = 100;
final JFrame frame = new JFrame("JProgress Demo");
// this would create a progress bar
final JProgressBar jp = new JProgressBar();
jp.setMinimum(0);
jp.setMaximum(max);
jp.setStringPainted(true);
// this would add a progress bar
frame.setLayout(new FlowLayout());
frame.getContentPane().add(jp);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200, 200);
frame.setVisible(true);
// this would be updating the progressbar
for (int i = 0; i <= max; i++)
(
final int presentValue = i;
try
(
SwingUtilities.invokeLater(new Runnable()
(
public void run()
(
jp.setValue(presentValue);
)
));
java.lang.Thread.sleep(100);
)
catch (InterruptedException e)
(
JOptionPane.showMessageDialog(frame, e.getMessage());
)
)
)
)

Výstup:

`

Příklad č. 2 - svislá lišta průběhu

Kód:

// Program for creation of the vertical progress bar
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class progress extends JFrame
(
// creation of the frame
static JFrame frame;
static JProgressBar bar;
public static void main(String() args)
(
// create a frame
frame = new JFrame("ProgresBar demo");
// creation of the panel
JPanel panel = new JPanel();
// creation of the progressbar
bar = new JProgressBar(SwingConstants.VERTICAL);
// setting initial value
bar.setValue(0);
bar.setStringPainted(true);
// addition of progressbar
panel.add(bar);
// addition of panel
frame.add(panel);
// setting the size of the frame
frame.setSize(500, 500);
frame.setVisible(true);
fill();
)
// function that increases the progress
public static void fill()
(
int j = 0;
try (
while (j <= 100) (
// filling the menu bar
bar.setValue(j + 10);
// delaying the thread
Thread.sleep(1000);
j += 20;
)
)
catch (Exception e) (
)
)
)

Výstup :

Příklad # 3 - Indikátor průběhu s řetězcem

Kód:

import java.awt.*;
import javax.swing.*;
public class Jprogress extends JFrame (
// creation of the frame
static JFrame frame;
static JProgressBar bar;
public static void main(String() args)
(
// creation of the frame
frame = new JFrame("ProgressBar demo");
// creation of the panel
JPanel panel = new JPanel();
// creation of the progressbar
bar = new JProgressBar();
// setting initial value
bar.setValue(0);
bar.setStringPainted(true);
// adding progressbar
panel.add(bar);
// adding panel
frame.add(panel);
// set the size of the frame
frame.setSize(500, 500);
frame.setVisible(true);
fill();
)
// function needed to increase progress
public static void fill()
(
int j = 0;
try (
while (j <= 100) (
// set text accoring to the level to which the bar is filled
if (j > 30 && j < 70)
bar.setString("wait for few soconds");
else if (j > 70)
bar.setString("almost done loading");
else
bar.setString("loading initiated");
// filling of the menu bar
bar.setValue(j + 10);
// delaying the thread
Thread.sleep(3000);
j += 20;
)
)
catch (Exception e) (
)
)
)

Výstup:

Závěr

Můžeme tedy dojít k závěru, že ukazatel průběhu je klíčovým prvkem uživatelského rozhraní, který je potřebný hlavně proto, aby poskytl zpětnou vazbu požadovanému uživateli. Uživatel často neinteraguje spolu s ukazatelem průběhu. Lišta JProgress se obvykle zobrazuje vždy, když je aplikace zaneprázdněna, a také je to pro uživatele známkou toho, že aplikace provádí úlohu a není zamrzlá.

Doporučené články

Toto je průvodce příkladem JProgressBar. Zde diskutujeme konstruktéry, metody JProgressBar spolu s příklady a implementací kódu. Další informace naleznete také v následujících článcích -

  1. Připojí se v Úlu
  2. Co je Úl?
  3. Architektura úlu
  4. Funkce úlu
  5. Top 6 typů spojení v MySQL s příklady
  6. Top 5 typů Boostrap se ukázkovým kódem
  7. Jak vytvořit ProgressBar v JavaFXu?

Kategorie: