"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية الحصول على صفوف محددة بكفاءة من JTable مع اختيار صف JCheckbox؟

كيفية الحصول على صفوف محددة بكفاءة من JTable مع اختيار صف JCheckbox؟

نشر في 2025-02-06
تصفح:275

How to Efficiently Get Selected Rows from a JTable with JCheckBox Row Selection?
Jtable مع jCheckbox في العمود الأول لاختيار الصف. يصبح اجتياز التسلسل غير فعال مع عدد كبير من الصفوف. هذا النهج يمثل مشكلة عند التعامل مع آلاف الصفوف.

النهج المقترح: مجموعة التي تحتوي على مؤشرات الصف المحدد عندما تتغير قيمة jCheckbox. &&&] مثال على الكود:

استيراد java.util.set ؛ استيراد java.util.treeset ؛ يمتد CheckModel من الفئة العامة AbstractTableModel { // ... مجموعة خاصة checked = new Treeset () ؛ // ... @تجاوز public void setValueat (Object Avalue ، int row ، int col) { منطقية B = (Boolean) Avalue ؛ Rowlist.set (Row ، B) ؛ إذا (ب) { checked.add (row) ؛ } آخر { checked.remove (row) ؛ } firetablerowsupdated (صف ، صف) ؛ } }
تحسين إضافي:

استخدم بنية بيانات خفيفة الوزن ، مثل مجموعة الأشجار ، لتخزين مؤشرات الصف المحددة للتكرار الفعال.

فكر في استخدام بنية بيانات مختلفة لتخزين صفوف محددة إذا أصبح استهلاك الذاكرة مشكلة.

] الوصول المستمر للوقت إلى الصفوف المحددة ، بغض النظر عن العدد الإجمالي للصفوف.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3