الجامعات العربية
طريقة إضافة و حذف بيانات من الـ JTable
طريقة إضافة و حذف بيانات من الـ JTable
طريقة إضافة و حذف بيانات من الـ JTable
طريقة إضافة و حذف بيانات من الـ JTable
طريقة إضافة و حذف بيانات من الـ JTable
طريقة إضافة و حذف بيانات من الـ JTable
المناهج السعودية
طريقة إضافة و حذف بيانات من الـ JTable
طريقة إضافة و حذف بيانات من الـ JTable
طريقة إضافة و حذف بيانات من الـ JTable
طريقة إضافة و حذف بيانات من الـ JTable
المناهج السعودية
طريقة إضافة و حذف بيانات من الـ JTable
المثال التالي يعلمك طريقة جعل المستخدم يدخل البيانات في الجدول, بالإضافة إلى جعله قادر على حذف البيانات التي أدخلها.
مثال
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import javax.swing.JFrame;
- import javax.swing.JLabel;
- import javax.swing.JTextField;
- import javax.swing.JButton;
- import javax.swing.JTable;
- import javax.swing.table.DefaultTableModel;
- import javax.swing.JScrollPane;
- publicclass Main {
- // هنا قمنا بإنشاء النافذة و جميع الأشياء التي سنضعها فيها
- static JFrame frame = newJFrame(“JTable demo”);
- static JLabel label_1 = newJLabel(“ID”);
- static JLabel label_2 = newJLabel(“Name”);
- static JLabel label_3 = newJLabel(“Phone”);
- static JTextField textField_1 = newJTextField();
- static JTextField textField_2 = newJTextField();
- static JTextField textField_3 = newJTextField();
- static JButton btn_add = newJButton(“Add”);
- static JButton btn_clear = newJButton(“Clear”);
- static JButton btn_delete = newJButton(“Delete Selected”);
- static JButton btn_deleteAll = newJButton(“Delete All”);
- static DefaultTableModel model = newDefaultTableModel();
- static JTable table = newJTable( model );
- static JScrollPane tableScroller = newJScrollPane( table );
- publicstaticvoidmain(String[] args){
- // هنا قمنا بوضع أسماء الأعمدة التي ستظهر في الجدول
- model.addColumn(“ID”);
- model.addColumn(“Name”);
- model.addColumn(“Phone”);
- // frame هنا قمنا بتحديد أماكن الأشياء التي سنضيفها في الـ
- label_1.setBounds(40, 50, 50, 20);
- label_2.setBounds(40, 90, 50, 20);
- label_3.setBounds(40, 130, 50, 20);
- textField_1.setBounds(100, 50, 120, 20);
- textField_2.setBounds(100, 90, 120, 20);
- textField_3.setBounds(100, 130, 120, 20);
- btn_add.setBounds(150, 180, 70, 30);
- btn_clear.setBounds(70, 180, 70, 30);
- btn_delete.setBounds(315, 250, 140, 30);
- btn_deleteAll.setBounds(470, 250, 140, 30);
- tableScroller.setBounds(280, 50, 370, 160);
- // frame هنا قمنا بإضافة جميع الأشياء التي قمنا بتعريفها سابقاً في الـ
- frame.add(label_1);
- frame.add(label_2);
- frame.add(label_3);
- frame.add(textField_1);
- frame.add(textField_2);
- frame.add(textField_3);
- frame.add(btn_add);
- frame.add(btn_clear);
- frame.add(btn_delete);
- frame.add(btn_deleteAll);
- frame.add(tableScroller);
- // frame هنا قمنا بتحديد خصائص الـ
- frame.setSize(710, 350);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setLayout(null);
- frame.setVisible(true);
- // btn_add هنا نضع الأوامر التي نريد تنفيذها عند النقر على الـ
- btn_add.addActionListener(newActionListener(){
- @Override
- publicvoidactionPerformed(ActionEvent e)
- {
- // إذا قام المستخدم بإدخال بيانات في مربعات النصوص الثلاثة
- if( !textField_1.getText().equals(“”) && !textField_2.getText().equals(“”) && !textField_3.getText().equals(“”))
- {
- // عندها سيتم تخزينهم في متغيرات بشكل مؤقت
- String id = textField_1.getText();
- String name = textField_2.getText();
- String phone = textField_3.getText();
- // الخاصة بالجدول model بعدها سيتم تخزينهم في مصفوفة واحدة, ثم إضافتها في الـ
- String[] userInfo = { id, name, phone };
- model.addRow( userInfo );
- }
- }
- });
- // btn_clear هنا نضع الأوامر التي نريد تنفيذها عند النقر على الـ
- btn_clear.addActionListener(newActionListener(){
- @Override
- publicvoidactionPerformed(ActionEvent e)
- {
- // سيتم مسح النصوص المدخلة في مربعات النصوص الثلاثة
- textField_1.setText(“”);
- textField_2.setText(“”);
- textField_3.setText(“”);
- }
- });
- // btn_delete هنا نضع الأوامر التي نريد تنفيذها عند النقر على الـ
- btn_delete.addActionListener(newActionListener(){
- @Override
- publicvoidactionPerformed(ActionEvent e){
- // إذا كان المستخدم قد قام بتحديد سطر واحد على الأقل من الجدول
- if( table.getSelectedRowCount() > 0)
- {
- // الخاص فيه index كل سطر قام المستخدم بتحديده من الجدول بعدها سيتم حذف كل سطر من خلال رقم الـ index سيتم تخزين رقم
- int[] selectedIndices = table.getSelectedRows();
- for(int i=selectedIndices.length–1; i>=0; i– )
- {
- model.removeRow( selectedIndices[i]);
- }
- }
- }
- });
- // btn_deleteAll هنا نضع الأوامر التي نريد تنفيذها عند النقر على الـ
- btn_deleteAll.addActionListener(newActionListener(){
- @Override
- publicvoidactionPerformed(ActionEvent e)
- {
- // يساوي 0. أي سيتم مسح جميع العناصر الموجودة فيها model هنا سيتم جعل عدد أسطر الـ
- model.setRowCount(0);
- }
- });
- }
- }
•ستظهر لك النافذة التالية عند التشغيل.
•ملاحظة لإلغاء أكثر من سطر في نفس الوقت, أبق إصبعك على الزر Ctrl أثناء تحديد الأسطر, بعدها أنقر على الزر Delete Selected لإلغائهم.
المصدر: طريقة إضافة و حذف بيانات من الـ JTable – المناهج السعودية