[Swing] تخصيص Customize JTable...تغير خلفية و لون الخط لرؤس الاعمدة TableHeader
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1 • شاطر
[Swing] تخصيص Customize JTable...تغير خلفية و لون الخط لرؤس الاعمدة TableHeader
الامثلة التالىة سنوضح كيفية تخصيص رؤس الاعمدة فى JTable مثل تغير لون الخط و ايضا تغير الخلفية وذلك بعدة طرق
الطريقة الاولى باستخدام getTableHeader :
الطريقة الثانية باستخدام JTableHeader :
الطريقة الثالثة إنشاء كائن renderers مخصصة لرؤوس الأعمدة
أولا نقوم بانشاء كلاس باسم SimpleHeaderRenderer كما يلى :
و يمكنك استخدام الكلاس السابق على النحو التالى :
كما يمكنك استخدام الكود التالى لتنسيق خلفية كل عامود على حدة
الطريقة الاولى باستخدام 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());
1zaza- ...
- تاريخ التسجيل : 18/11/2018
المساهمات : 39
النقاط : 66
التقيم : 3
الدولة :
الجنس :
| |
منتدى مصر التقني :: قسم لغات البرمجة Programming languages :: لغة الجافا Java :: واجهة المستخدم الرسومية Java Swing
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
أمس في 8:56 pm من طرف moslema_r
» شركة مكافحة حشرات في راس الخيمة
أمس في 8:34 pm من طرف moslema_r
» تطبيقIncogniton لإدارة ملفات تعريف متعددة للمتصفح
الأربعاء أبريل 24, 2024 3:51 pm من طرف زاكااا
» افضل شركة مكافحة النمل الابيض بالرياض
الإثنين أبريل 22, 2024 9:41 pm من طرف moslema_r
» Exemplary Сasual Dating - Verified Women
الخميس أبريل 18, 2024 9:18 pm من طرف wdqwd
» رش الدفان بالرياض
الخميس أبريل 18, 2024 7:11 pm من طرف moslema_r
» شركة تنظيف خزانات الشارقة
الخميس أبريل 18, 2024 6:57 pm من طرف moslema_r
» شركة مكافحة الفئران بالرياض
الإثنين أبريل 15, 2024 8:23 pm من طرف moslema_r
» افضل شركة كشف تسربات المياه بالباحة
الخميس أبريل 04, 2024 7:02 am من طرف gmalnagy
» ساعدوني وفهموني help me
الجمعة مارس 29, 2024 8:37 am من طرف linesoft