View Full Version : سوال: بهترین راه خروج از برنامه در Canvas
mohsen12345
سه شنبه 20 مهر 1389, 14:09 عصر
سلام دوستان
با توجه به اینکه متد notifyDestroyed(); در MIDlet به صورت static نیست و باید حتما از داخل خود MIDlet فراخوانی بشه می خواستم بدونم پیشنهاد شما واسه خروج به وسیله یک کلاس Canvas چیه؟
mahdi68
سه شنبه 20 مهر 1389, 14:52 عصر
سلام
هنگامی که یک نمونه از canvas میسازین همون میدلت یه عنوان پارامتر ارسال کنید بهش تا بتوننین از notifyDestroyed استفاده کنید
pedram123
سه شنبه 20 مهر 1389, 20:16 عصر
سلام
هنگامی که یک نمونه از canvas میسازین همون میدلت یه عنوان پارامتر ارسال کنید بهش تا بتوننین از notifyDestroyed استفاده کنید
از همون میدلت تابع exitMidlet () را فراخوان کنید
mohsen12345
شنبه 08 آبان 1389, 12:06 عصر
از همون میدلت تابع exitMidlet () را فراخوان کنید
منظورتون چیه ؟یعنی کلاس MIDLet رو دوباره از داخل Canvas ایجاد کنم؟ این که تقریبا میفته تو یه حلقه تا out of memory error رخ بده. nofitydestroid هم static نیست که بشه از بیرون کلاس فراخوانیش کرد؟
می شه منظورتون رو کامل تر توضیح بدین!
rashid1368
یک شنبه 09 آبان 1389, 09:48 صبح
سلام
شما برای این کار باید از کلاس های interface استفاده کنید
می تونید یه مثال از اون رو در این لینک ببینید
(برنامه رو دانلود کنید و کدی که نوشته شده رو دقت کنید)
http://barnamenevis.org/forum/showthread.php?t=211493
روش کار به این شکل هست که شما یه اینترفیس تولید می کنید که در این برنامه به نام CmdListener هست.... بعد از این کلاس یکی داخل میدلت اصلی تعریف می کنی..... برای این کار میتونی به برنامه ای که در بالا گفته شده نگاه کنی
بعد از اون شما باید هر canvas که display می کنی این متغیر از نوع کلاس cmdListener رو هم بهش بفرستی
بقیه اش رو می تونی در کد برنامه راحت تر بفهمی..... چون توضیح بدم ممکنه یه کم گیجت کنم
...
خوشحال می شم بتونم کمکت کنم
handinux
سه شنبه 11 آبان 1389, 13:46 عصر
شما هنگام گرفتن instance از canvas کافیست تا میدلت رو به constructor متعلق به canvas پاس بدید!
مثل این :
class myCanvase extend...
public myCanvase(MyMidlet mid){
....
}
protected keyPressed(){
if (pressed==7)
mid.notifyDestroyed();
}
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.