[Swing] تخصيص Customize JTable...تغير خلفية و لون الخط لرؤس الاعمدة TableHeader
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1 • شاطر
[Swing] تخصيص Customize JTable...تغير خلفية و لون الخط لرؤس الاعمدة TableHeader
الامثلة التالىة سنوضح كيفية تخصيص رؤس الاعمدة فى JTable مثل تغير لون الخط و ايضا تغير الخلفية وذلك بعدة طرق
![[Swing] تخصيص Customize JTable...تغير خلفية و لون الخط لرؤس الاعمدة TableHeader JTable%20column%20header%20custom%20renderer%20basic](https://www.codejava.net/images/articles/javase/swing/jtable-header-renderer/JTable%20column%20header%20custom%20renderer%20basic.png)
الطريقة الاولى باستخدام getTableHeader :
الطريقة الثانية باستخدام JTableHeader :
الطريقة الثالثة إنشاء كائن renderers مخصصة لرؤوس الأعمدة
أولا نقوم بانشاء كلاس باسم SimpleHeaderRenderer كما يلى :
و يمكنك استخدام الكلاس السابق على النحو التالى :
كما يمكنك استخدام الكود التالى لتنسيق خلفية كل عامود على حدة
![[Swing] تخصيص Customize JTable...تغير خلفية و لون الخط لرؤس الاعمدة TableHeader JTable%20header%20multi%20custom%20renderers](https://www.codejava.net/images/articles/javase/swing/jtable-header-renderer/JTable%20header%20multi%20custom%20renderers.png)
![[Swing] تخصيص Customize JTable...تغير خلفية و لون الخط لرؤس الاعمدة TableHeader JTable%20column%20header%20custom%20renderer%20basic](https://www.codejava.net/images/articles/javase/swing/jtable-header-renderer/JTable%20column%20header%20custom%20renderer%20basic.png)
الطريقة الاولى باستخدام getTableHeader :
- الكود:
// تغير خلفية رؤس الاعمدة
jTable1.getTableHeader().setBackground(Color.PINK);
//تغير لون اسماء رؤس الاعمدة
jTable1.getTableHeader().setForeground(Color.BLUE);
الطريقة الثانية باستخدام JTableHeader :
- الكود:
JTableHeader H = jTable1.getTableHeader();
H.setForeground(Color.red);
H.setBackground(Color.darkGray);
الطريقة الثالثة إنشاء كائن renderers مخصصة لرؤوس الأعمدة
أولا نقوم بانشاء كلاس باسم SimpleHeaderRenderer كما يلى :
- الكود:
import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.table.TableCellRenderer;
public class SimpleHeaderRenderer extends JLabel implements TableCellRenderer {
public SimpleHeaderRenderer() {
setFont(new Font("Consolas", Font.BOLD, 14));
setForeground(Color.BLUE);
setBorder(BorderFactory.createEtchedBorder());
}
@Override
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
setText(value.toString());
return this;
}
}
و يمكنك استخدام الكلاس السابق على النحو التالى :
- الكود:
table.getTableHeader().setDefaultRenderer(new SimpleHeaderRenderer());
كما يمكنك استخدام الكود التالى لتنسيق خلفية كل عامود على حدة
- الكود:
table.getColumnModel().getColumn(2).setHeaderRenderer(new SimpleHeaderRenderer());
![[Swing] تخصيص Customize JTable...تغير خلفية و لون الخط لرؤس الاعمدة TableHeader JTable%20header%20multi%20custom%20renderers](https://www.codejava.net/images/articles/javase/swing/jtable-header-renderer/JTable%20header%20multi%20custom%20renderers.png)
1zaza- ...
- تاريخ التسجيل : 18/11/2018
المساهمات : 39
النقاط : 66
التقيم : 3
الدولة :
الجنس :
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
» مدرس رياضيات متوسط ثانوي 97234924 بالكويت
» أفضل موقع تأجير سيارات في مصر
» مدرس رياضيات متوسط ثانوي 97234924 بالكويت
» شركة آي بي إس للخدمات الاستشارية المالية وتكنولوجيا المعلومات
» ادارة متجرك الالكتروني
» مدرس انجليزي متوسط ثانوي 97234912 بالكويت
» شركة IBS للاستشارات الاقتصادية والادارية
» أحصل ملبغ مالى "رمزي " نظير مشاركاتك و مقالاتك بالمنتدي
» "أحلامنا المرآة: فك رموزها واستكشاف عمق المعاني"