03-13-2012، 11:26 PM
دستورات کار با time:
این تابع زمان را از نیمه شب 1.1.1970 تا به حال را برمیگرداند که توسط توابع در ادامه توضیح داده خواهد شد می توانید ساعت و دقیقه و ... را ازدرون این مقدار برگشتی بیرون بکشید.
مقدار ثانیه را از time را برمیگرداند که عددی بین 0 تا 59 میباشد
مقدار ساعت را از یک متغیر time برمیگرداند که عددی بین 0 تا23 است
عددی را بر میگرداند که دقیقه است و عددی بین 0 تا 59 است.
برای برگرداندن روز در ماه جاری از درون تاریخ بدست آمده از تابع getCurrentTime .
برگرداندن ماه جاری
برگرداند روز هفته که عدد 1برای Sunday و عدد 2 برای Monday و تا 7 که Saturday میشود.
برگرداند سال
مقدار خروجی تابع تعداد روز سال جاری است که عددی بین 1 تا 366 می باشد.
زمان جاری را بر اساس میلی ثانیه برمیگرداند.که عددی 32بیتی است و یعنی زمانی 2^32 می تواند برگرداند که میشه 48 روز و هر 48 روز ریست شده و از 0 شروع به شمارش میکند.پس برای تاریخ جاری خوب نیست و میتونید برای پیاده سازی یک تایمر در برنامه استفاده کنید.بعنوان مثال یک بازی ساده مانند tetris را درنظر بگیرید که در ثانیه نیاز دارید بلاک ها را حرکت دهید و می توانید توسط کلیدهای فشرده شده بلاک ها را به سمت چپ یا راست حرکت دهید.که حلقه اصلی می تواند بدین صورت باشد:
کد:
function getCurrentTime: integer;
کد:
function getSecond(time: integer): integer;
کد:
function getHour(time: integer): integer;
کد:
function getMinute(time: integer): integer;
کد:
var time: integer;
text: string;
begin
time := getCurrentTime;
text := 'Current time is ' + getHour(time);
text := text + ':' + getMinute(time);
text := text + ':' + getSecond(time);
drawText(text, 0, 0);
repaint;
delay(1000); { wait 1 second before MIDlet terminates }
end.
کد:
function getDay(time: integer): integer;
کد:
function getMonth(time: integer): integer;
کد:
function getWeekDay(time: integer): integer;
کد:
function getYear(time: integer): integer;
کد:
function getYearDay(time: integer): integer;
کد:
function getRelativeTimeMs: integer;
کد:
...
lastSavedTime := getRelativeTimeMs; { initialize the timer }
repeat
{ read and process the keypad input }
key := getKeyClicked;
if keyToAction(key) = GA_LEFT then moveLeft;
if keyToAction(key) = GA_RIGHT then moveRight;
{ check if 1 second has passed }
if ((getRelativeTimeMs - lastSavedTime) > 1000)
or (getRelativeTimeMs < lastSavedTime) { check if the timer is reset after 48 days }
then
begin
lastSavedTime := getRelativeTimeMs;
moveDown;
end;
until gameOver;
...
معبودا مرا ببخش، بخاطر درهایی که کوبیدم ولی هیچکدام خانه تو نبود ...