الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

احتاج مساعدة في ال Recyclebin & Jtable

بدأه zibara في 4 أكتوبر 2009 · 9 رد · 637 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه

أحتاج بعض المساعدة منكم ايها الأفاضل

اولاً :كيف استطيع ان اسوي check على الrecycle bin

حاولت البحث فوجدت هذه الinterface

اضغط هنا

و لكن لم استطع ان احملها فهل من الممكن أن تعطوني اياها

الطلب الثاني

كيف استطيع ان اتحكم بال Row و ان اضغط عليه و لكن دون ان أسمح لل Cell بأن تتغير

ارجوا ان ترفقوها بمثال

و شكراً ارجوا ان تسرعوا لأن المسألة لا تتحمل و قتاً للإنتظار

أقدر مجهودكم

تحياتي

#2

ممكن توضح أكثر لأن أسئلتك غير مفهومة

بالنسبة لJTable ماذا تعني عندما تقول أنك تريد التحكم بالRow؟؟

#3
herch كتب:

ممكن توضح أكثر لأن أسئلتك غير مفهومة

بالنسبة لJTable ماذا تعني عندما تقول أنك تريد التحكم بالRow؟؟

اولاً شكراً على الرد السريع

ثانياً اعتذر عن الغموض في الأسئلة و هنا التوضيح

في الطلب الأول اريد ان اتحكم بسلة المهملات في الكمبيوتر يعني ان يتم فحصها اذا كانت فارغة او ممتلئة و إفراغها إذا كانت ممتلئة وهكذا

اما في الطلب الثاني فإني اريد ان يكون الRow editable and the cell is not editable

#4

بالنسبة لسلة المهملات فليست لدي أدنى فكرة

بالنسبة لجعل عنصر من سطر ما غير قابل للكتابة، فذلك يتم على مستوى الTableModel، فهناك ميثود isCellEditable هي التي تقول لJTable هل هذا العنصر يمكن الكتابة فيه أم لا.

هذا يعني أنك لازم تكتب TableModel خاص بك وتعيد كتابة هذه الميثود بحيث أنها تعيد false للعنصر الذي تريده أن يكون غير قابل للكتابة

هذا مثال، وستلاحظ أنني كتبت كلاس جديدة ترث من DefaultTableModel وأعدت كتابة الميثود isCellEditable بحيث أن العنصر الموجود في السطر الثالث والعمود الثاني غير قابل للكتابة لأننا أعدنا القيمة false، بينما باقي العناصر تقبل الكتابة


import javax.swing.*;

public class TestEditionJTable {

JFrame frm;
JTable tbl;
public TestEditionJTable() {
MyTableModel model = new MyTableModel();
model.addColumn("Column1");
model.addColumn("Column2");
model.addColumn("Column3");
model.addColumn("Column4");
model.addRow(new Object[]{"Element1", "Element2", "Element3", "Element4"});
model.addRow(new Object[]{"Element5", "Element6", "Element7", "Element8"});
model.addRow(new Object[]{"Element9", "Element10", "Element11", "Element12"});

tbl = new JTable(model);

frm = new JFrame();
frm.add(new JScrollPane(tbl));
frm.setSize(400, 400);
frm.setVisible(true);
}

public static void main(String[] args) {
new TestEditionJTable();
}

class MyTableModel extends DefaultTableModel {
public boolean isCellEditable(int row, int column) {
if (row == 2 && column == 1) {
return false;
} else {
return true;
}
}
}
}
   import javax.swing.table.*;

#5

يعني ما بعرف كيف بدي أشكرك

بس بقلك الله يكثر من أمثالك

و بالنسبة لسلة المهملات يوجد مثال

في هذا الموقع

و لكن كيف احصل على هذه package

#6

على حسب ما يبدو في الموقع أن هذه المكتبة

ليس لها علاقة بسلة المهملات

وأن هناك شيء آخر يعاد تصنيعه recycle

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#7

بالنسبة لسلة المهملات في windows فأظن أنها موجودة في المجلد root_drive:\RECYCLER، يعني يكفي الدخول إلى هذا المجلد ورؤية ما يحتويه بواسطة الفئة File


String[] content = recycler.list();
for (String s : content) {
System.out.println(s);
}
File recycler = new File("c:\\RECYCLER");

#9

السلام عليكــم ورحمـة الله وبركاتــه

مرة جديدة اكرر شكري العميق لكم

و لي طلب جديد ارجوا منكم ان تتحملوني قليلاً

في هذا الكود توجد مشكلة


public JTable table1() {
dtm1 = new DefaultTableModel() {

@Override
public Class getColumnClass(int column) {
Class returnValue;
if ((column >= 0) && (column < getColumnCount())) {
returnValue = getValueAt(0, column).getClass();
} else {
returnValue = Object.class;
}
return returnValue;
}

@Override
public boolean isCellEditable(int row, int column) {
return false;
}
};

// dtm1.addColumn("select");
dtm1.addColumn("File Name");
dtm1.addColumn("Extension");
dtm1.addColumn("In Folder");
dtm1.addColumn("Size(Byte)");
dtm1.addColumn("Last Modified");
dtm1.addColumn("Groupe");



t1 = new JTable(dtm1) {

// Color red = new Color(255, 150, 150);
@Override
public Component prepareRenderer(
TableCellRenderer renderer, int row, int column) {
Component rend = super.prepareRenderer(renderer, row, column);
//this.setSelectionMode(javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

// convertColumnIndexToModel() is needed if using the JTable convenience method for getValueAt()
// otherwise, column re-arrangement can break because JTable assumes column 2 to be the View's
// column, not the model's column.
// In JDK6+, Rows have the same dilemma since sorting was built into the table implementation.
//this.setCellSelectionEnabled(false);
// this.setRowSelectionAllowed(true);

Integer gr = (Integer) getValueAt(row, this.convertColumnIndexToModel(5));
if (gr % 2 == 0) { // Detect over the hill programmers :)
rend.setBackground(Color.CYAN);

} else { // NOTE: you have to set the color every time since renderers are re-used
if (this.getSelectedRow() == row) {
rend.setBackground(this.getSelectionBackground());
} else {
try {
rend.setBackground(this.getBackground());
} catch (java.lang.NullPointerException exc) {
}
}
}
return rend;
}
};

// t1.getColumnModel().getColumn(0).setCellEditor(new CheckBoxCellEditor());
// t1.getColumnModel().getColumn(0).setCellRenderer(new CWCheckBoxRenderer());*

return t1;
}
 @SuppressWarnings("empty-statement")

الكود عبارة عن JTable

على ان يكون في كل groupe من الأسطر ملونة بلون إما الأبيض او الأزرق

و لكن توجد مشكل في الselection على اللون الأزرق

بحيث يأخذ الcell و لا يأخذ الrow كاملاً كما في الأبيض

ارجوا منكم إصلاح الخلل

و الله يبارك فيكم

والسلام عليكم

تحياتي

#10

يا إخوان لا تنسونا من ردودكم الرائعة على المشاركة رقم 9

انتظرها بسرعة ارجوكم الرد

و السلام عليكم

تحياتي

مواضيع مشابهة