PDA

View Full Version : سوال: افزودن سطر به jtableدر جاوا



marziehm869
پنج شنبه 12 بهمن 1391, 21:59 عصر
سلام
من میخوام برای یک سری اطلاعات که در یک حلقه for در mainبرنامه بدست میارم هر بار یک سطر در جدول اضافه کنم و اطلاعات رو داخلش بریزم برای اینکار در حلقه این تابع رو صدا میزنم
ff.Create_row(activeProcess.number,activeProcess.a rrivalTime/1000,(activeProcess.startTime + activeProcess.burstTime) / 1000,activeProcess.burstTime,(double) turnaroundTime / 1000);
(ffنام فرم کلی)
در قسمت فرم :
Object columenName []={"name","arrivial","start","end","turn"};
final DefaultTableModel model = new DefaultTableModel(null,columenName);
final JTable table = new JTable(model);
اینا رو درست کردم که بتونم از addrow() استفاده کنم.
تابع داخل فریم:
public static void Create_row(int s1,double arr,double start,double burst,double TernAround){
Object [] data={s1,arr/1000,(start+burst) / 1000,burst,TernAround};
model.addRow(data);
اینه !!!حالا (table)model.addRowاین Error رو میده!!!:
non-static variable model cannot be referenced from a static context
یعـــــــــــــــــــــــ ـنی چــــــــــــــــــــــــ ـــه؟؟؟؟؟؟؟؟؟؟؟؟:گریه:

parnian~parnian
پنج شنبه 12 بهمن 1391, 22:11 عصر
تابعی که داری استفاده می کنی static هست و متغیری که استفاده کردی non-static واسه همین این ارور رو میده یا static رو از خط تعریف تابع بردارین یا متغیرتون رو static تعریف کنین .

marziehm869
پنج شنبه 12 بهمن 1391, 22:22 عصر
منظورتون data هست؟؟ مگه میشه ارایه یک بعدی رو از نوع static تعریف کرد؟
Object [] data={s1,arr/1000,(start+burst) / 1000,burst,TernAround};
اینطوری تعریف کردم.تو همین متد.

marziehm869
جمعه 13 بهمن 1391, 22:27 عصر
خوب این مورد اینحوری حل شد!!:
public static void Create_row(double data[]
final DefaultTableModel model = new DefaultTableModel();
model.addRow(data);
jTable1.setModel(model);
اما الان یه مشکل اساسی تر دارم اونم اینه که چون ارایه دیتا تو یه حلقه پر میشه در نهایت جدول من یه سطر داره اخرین دیتای موحود!!

parnian~parnian
شنبه 14 بهمن 1391, 21:55 عصر
کل کدی که واسه اون قسمته بذارین تا ببینم مشکلتون از کجاست