ورود

View Full Version : سوال: مشکل در ایجاد آرایه از JLable



mostafa3dmax
شنبه 15 مهر 1396, 17:29 عصر
سلام
میخام یه سری از لیبل ها رو که با swing تو برنامه درست کردم رو تو یه آرایه بذارم که از ویژگیاشون بتونم استفاده کنم مثلا تکستشونو عوض کنم . اما هرکاری میکنم ارور میده میخاستم بدونم مشکلم کجاست

JLable[] labels=new JLable[2];
public void f(){
labels[0]=lbl1;
labels[1]=lbl2;
System.out.println(labels[0].getText());
}

بعد تابع f رو توی کانستراکتور خود فریم برنامه فراخوانی کردم که پیغام رو چاپ کنه ولی ارور Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException رو میده
یا اینکارو هم کردم بازم ارور داد :



JLable[] labels=new JLable[2];
labels={lbl1,lbl2};


اینا در صورتیه که خود نتبین لیبل ها رو تعریف کرده مثلا

private javax.swing.JLabel lbl1;
private javax.swing.JLabel lbl2;

vahid-p
یک شنبه 16 مهر 1396, 14:24 عصر
اگر تعریف نکرده بود که اصلا کامپایل نمیشد. وقتی NullPointerException میده احتمالا به شیء ای به این فیلدها نسبت داده نشده. ببینید جایی نوشته lbl1=new JLable(); اگر بود که درسته. البته باید قبل از تابع f این عبارت وجود داشته باشه.
سعی کنید دیباگ کنید (breakpoint بذارید) و خط به خط اجرا کنید تا متوجه روند اجرای برنامه بشید.