لا استطيع فهم داله ال timer
هل من الممكن شرح مثال لتوضيح كيف يمكن استخدام هذه الداله
لا استطيع فهم داله ال timer
هل من الممكن شرح مثال لتوضيح كيف يمكن استخدام هذه الداله
على الرابط تجد شرح لها ومثال وبشكل بسيط تعريفها هي مثلا ان تقوم بعمل اسلوب ما ثم تنتظر وقت معين ثم تعيد عمل هذا الاسلوب وهكذا
لست متواجد بشكل يومي
اشكرك اخى مجدى على ردك السريع الذى ما اشتاق الى قراته
ولكن انا فعلا قرات هذا الرابط ولكن لا استطيع فهم الكثير منه
ارجو من حضرتك ان تقوم بشرحه لى بطريقتك الممتازه التى اعتدنا كلنا عليها واعتذر للاطاله
اليك هذا المثال والشرح موجود في الكود قمت بتبسيط المثال الموجود على الرابط السابق
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.*;//الباكيج الموجود بها التايمر
public class MeinScreen extends MIDlet
{
Timer timer = new Timer();// انشاء التايمر لا ستخدامها
Display display;
StartTimer st = new StartTimer();// الكلاس لبدء التايمر
PAINTING p = new PAINTING();//في هذه الكلاس نكتب ما نريد عمله اقصد ما الذي يقوم به البرنامج
public MeinScreen()
{
display=Display.getDisplay(this);
}
public void startApp()
{
display.setCurrent(p);
timer.schedule(st, 1000, 1000 );// انتظر ثانية وبعدها قم بعمل الرسم او الاسلوب كل ثانية
}
protected void pauseApp() { }
protected void destroyApp( boolean unconditional ) { }
public void exit(){
timer.cancel(); // stop painting() لالغاء عمل التايمر وتوقيفها
destroyApp( true );
notifyDestroyed();
}
//هذه الكلاس دائما عند استخدام التايمر يجب استخدامها
//لمعرف ما هو الاسلوب الذي يجب ان يبدا به
//ويجب ان يحتوي على الاسلوب رن ومن ثم كتابة الاسلوب المراد تنفيذه في الاول
class StartTimer extends TimerTask {
public void run(){
p.Start(); //Start painting
}
}
// and here you must write what make your Programm !!
class PAINTING extends Canvas
{
int w = getWidth();
int h = getHeight();
int x =getWidth()/2;
int y =getHeight()/2;
int temp = y;
public void Start()
{
// ابدا الرسم بقيمة معينة
y=y+10;
if(y>h){y=temp;}
repaint();// قم بالرسم مرة اخرى وقمنا بتحديد الوقت
//timer.schedule(st, 1000, 1000 );// انتظر ثانية وبعدها قم بعمل الرسم او الاسلوب كل ثانية
}
protected void paint(Graphics g)
{
g.setColor(255,255,255);
g.fillRect(0,0,getWidth(),getHeight());
g.setColor(255,0,0);
g.drawString("J2ME is cool and easy",x,y,Graphics.HCENTER|Graphics.BASELINE);
}
}
// Stop The running
protected void keypressed( int keycode ){
exit();
}
}لست متواجد بشكل يومي
بسم الله الرحمن الرحيم
والله يا اخ مجدى انا كل يوم تزداد سعادتى لاننى مشترك بهذا المنتدى الذى يقوم عليه أفاضل مثلك
انا غايه فى السعادة لسرعه ردك على اسئلتى وان كنت اخشى ان اكون اطيل فى السوال ولكن جعل الله هذا فى ميزان حسناتك الى يوم الدين
هذا الموضوع مغلق.