إنشاء و تنسيق الوان العنصر JProgressBar
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1 • شاطر
إنشاء و تنسيق الوان العنصر JProgressBar
العنصر الرسومي #JProgressBar هو جزء من حزمة Java Swing و هو المكون الذي يعرض بصريا تقدم بعض المهام. لذلك سنتعلم فى هذا المقال كيفية انشائه و التعامل معه

أولا :بناء العنصر الرسومي #JProgressBar
فيما ادنا المشيدات التى تستخدم فى بناء و تشيد #JProgressBar
أمثلة توضيحية :
1_إنشاء JProgressBar بدون نص عليه
الاخراج :

مثال أخر لانشاء شريط تقدم افقى مع اظهار النسبة المؤية
الاخراج :

مثال اخر كتابة جملة و اظهارها على شريط التقدم
الاخراج

مثال اخر يوضح كيفية تغير لون شريط التقدم
الاخراج

كما يمكنك استخدام UIManager لتنيسق أكثر شريط التقدم على النحو التالى :

أولا :بناء العنصر الرسومي #JProgressBar
فيما ادنا المشيدات التى تستخدم فى بناء و تشيد #JProgressBar
- ينشئ شريط تقدم بدون نص عليه ؛
- الكود:
JProgressBar ()
- ينشئ شريط تقدم مع اتجاه محدد. إذا تم تمرير #SwingConstants_VERTICAL كوسيطة ، يتم إنشاء شريط تقدم عمودي ، إذا تم تمرير #SwingConstants_HORIZONTAL كوسيطة ، يتم إنشاء شريط تقدم أفقي.
- الكود:
JProgressBar(int orientation)
- ينشئ شريط تقدم مع الحد الأدنى والحد الأقصى للقيمة المحددة.
- الكود:
JProgressBar (int min، int max)
- ينشئ شريط تقدم مع الحد الأدنى والحد الأقصى للقيمة المحددة وتوجيه محدد. إذا تم تمرير SwingConstants.VERTICAL كوسيطة ، يتم إنشاء شريط تقدم عمودي ، إذا تم تمرير SwingConstants.HORIZONTAL كوسيطة يتم إنشاء شريط التقدم الأفقي.
- الكود:
JProgressBar(int orientation, int min, int max)
أمثلة توضيحية :
1_إنشاء JProgressBar بدون نص عليه
- الكود:
import java.awt.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
final int MAX = 100;
final JFrame frame = new JFrame("JProgress Demo");
// إنشاء شريط التقديم
final JProgressBar pb = new JProgressBar();
// تحديد ادنى قيمة و اعلى قيمة لشريط التقدم
pb.setMinimum(0);
pb.setMaximum(MAX);
// إضافة شريط التقديم للنافذة
frame.setLayout(new FlowLayout());
frame.getContentPane().add(pb);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
frame.setVisible(true);
// حلقة تكرارية لتحديث قيمة شريط التقديم
for (int i = 0; i <= MAX; i++) {
final int currentValue = i;
try {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
pb.setValue(currentValue);
}
});
java.lang.Thread.sleep(100);
} catch (InterruptedException e) {
JOptionPane.showMessageDialog(frame, e.getMessage());
}
}
}
}
الاخراج :

مثال أخر لانشاء شريط تقدم افقى مع اظهار النسبة المؤية
- الكود:
import java.awt.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
final int MAX = 100;
final JFrame frame = new JFrame("JProgress Demo");
// إنشاء شريط التقديم
final JProgressBar pb = new JProgressBar(SwingConstants.VERTICAL);
// تحديد ادنى قيمة و اعلى قيمة لشريط التقدم
pb.setMinimum(0);
pb.setMaximum(MAX);
// اظهار النسبة المؤية
pb.setStringPainted(true);
// إضافة شريط التقديم للنافذة
frame.setLayout(new FlowLayout());
frame.getContentPane().add(pb);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
frame.setVisible(true);
// حلقة تكرارية لتحديث قيمة شريط التقديم
for (int i = 0; i <= MAX; i++) {
final int currentValue = i;
try {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
pb.setValue(currentValue);
}
});
java.lang.Thread.sleep(100);
} catch (InterruptedException e) {
JOptionPane.showMessageDialog(frame, e.getMessage());
}
}
}
}
الاخراج :

مثال اخر كتابة جملة و اظهارها على شريط التقدم
- الكود:
import java.awt.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
final int MAX = 100;
final JFrame frame = new JFrame("JProgress Demo");
// إنشاء شريط التقديم
final JProgressBar pb = new JProgressBar();
// تحديد ادنى قيمة و اعلى قيمة لشريط التقدم
pb.setMinimum(0);
pb.setMaximum(MAX);
// اظهار النسبة المؤية
pb.setStringPainted(true);
// كتابة بعض الكلمات على شريط التقدم
pb.setString( "loading started" );
// إضافة شريط التقديم للنافذة
frame.setLayout(new FlowLayout());
frame.getContentPane().add(pb);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
frame.setVisible(true);
// حلقة تكرارية لتحديث قيمة شريط التقديم
for (int i = 0; i <= MAX; i++) {
final int currentValue = i;
try {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
pb.setValue(currentValue);
}
});
java.lang.Thread.sleep(100);
} catch (InterruptedException e) {
JOptionPane.showMessageDialog(frame, e.getMessage());
}
}
}
}
الاخراج

مثال اخر يوضح كيفية تغير لون شريط التقدم
- الكود:
import java.awt.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
final int MAX = 100;
final JFrame frame = new JFrame("JProgress Demo");
// إنشاء شريط التقديم
final JProgressBar pb = new JProgressBar();
// تحديد ادنى قيمة و اعلى قيمة لشريط التقدم
pb.setMinimum(0);
pb.setMaximum(MAX);
// اظهار النسبة المؤية
pb.setStringPainted(true);
// تغير لون شريط التقدم
pb.setForeground(Color.red);
// كتابة بعض الكلمات على شريط التقدم
pb.setString( "loading started" );
// إضافة شريط التقديم للنافذة
frame.setLayout(new FlowLayout());
frame.getContentPane().add(pb);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
frame.setVisible(true);
// حلقة تكرارية لتحديث قيمة شريط التقديم
for (int i = 0; i <= MAX; i++) {
final int currentValue = i;
try {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
pb.setValue(currentValue);
}
});
java.lang.Thread.sleep(100);
} catch (InterruptedException e) {
JOptionPane.showMessageDialog(frame, e.getMessage());
}
}
}
}
الاخراج

كما يمكنك استخدام UIManager لتنيسق أكثر شريط التقدم على النحو التالى :
- الكود:
UIManager.put("ProgressBar.background", Color.BLACK);
UIManager.put("ProgressBar.foreground", Color.RED);
UIManager.put("ProgressBar.selectionBackground", Color.YELLOW);
UIManager.put("ProgressBar.selectionForeground", Color.BLUE);
زهراء- ........
- تاريخ التسجيل : 18/02/2011
المساهمات : 438
النقاط : 769
التقيم : 67
الدولة :
الجنس :
رد: إنشاء و تنسيق الوان العنصر JProgressBar



ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
» مدرس رياضيات متوسط ثانوي 97234924 بالكويت
» أفضل موقع تأجير سيارات في مصر
» مدرس رياضيات متوسط ثانوي 97234924 بالكويت
» شركة آي بي إس للخدمات الاستشارية المالية وتكنولوجيا المعلومات
» ادارة متجرك الالكتروني
» مدرس انجليزي متوسط ثانوي 97234912 بالكويت
» شركة IBS للاستشارات الاقتصادية والادارية
» أحصل ملبغ مالى "رمزي " نظير مشاركاتك و مقالاتك بالمنتدي
» "أحلامنا المرآة: فك رموزها واستكشاف عمق المعاني"