المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : استفســـــــار خاص بالتعامل مع الوقت (Time)جمع ، طرح ....؟


ياسرهتهت
14-02-2015, 10:49 PM
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
أخـــواني الاعزاء
اســـــــــاتذتي الكـــــــــرام
استفسار اليوم خاص بالتعامل مع الوقت Time
ولأنني لا اعرف كيف اصيغ سؤالي ؟
سأوضح المطلوب بهذا المشروع البسيط
----- في الصفحة ---- On Show --- يوجد هذا الكود

Page.StartTimer( 10);


----- في الصفحة ---- On Timer--- يوجد هذا الكود

SYST_TEM= System.GetTime(TIME_FMT_MIL);

Input.SetText("Input1", SYST_TEM);
-----------------------------------------------------------------------------------
هكذا اصبحت ساعة النظام تعرض تعمل في الانبت 1 (Input1 )
-----------------------------------------------------------------------------------
ويوجد في الصفحة اربع (Input )

و زر ( )

كود الزر

P1 = Input.GetText("Input1");
H = Input.GetText("INSERT-H");
M = Input.GetText("INSERT-M");
Input.SetText("BEG-TEM", P1);
-------------------------------------------------------------------------
Input.SetText("END-TEM", P1+H+M);



هذا ملف مفتوح يوضح الفكرة والمطلوب اكثر

http://im70.gulfup.com/6PmG8D.png


http://www.gulfup.com/?oW4mf8


موفق بإذن الله ... لك مني أجمل تحية .
:abc_152::abc_152::abc_152:

فرح صالحي
14-02-2015, 11:26 PM
موفق بإذن الله ..:abc_152: لك مني أجمل تحية .

ثامر أبو بلقيس
15-02-2015, 12:13 AM
السلام عليكم ورحمة الله وبركاته

في زر التشغيل أكتب
s= System.GetTime(TIME_FMT_SEC);
m=System.GetTime(TIME_FMT_MIN);
h=System.GetTime(TIME_FMT_HOUR);
yaser_m = String.ToNumber(Input.GetText("INSERT-M"))
yaser_h = String.ToNumber(Input.GetText("INSERT-H"))
thameur = ((m+yaser_m)*60)+s+((h+yaser_h)*3600)
b =os.date("!%X",thameur)
Input.SetText("END-TEM", b);

محاولة وقت متأخر:abc_088: اذ ظهرت عيوب أو وددت شروح
غدا إن شاء الله
موفق :abc_138:

ياسرهتهت
15-02-2015, 01:13 AM
بسم الله الرحمن الرحيم
بارك الله فيك استاذي ابوبلقيس
الكود ممتاز ولايوجد اخطاء
وتقريبا كله مفهوم ما عدا
b =os.date("!%X",thameur)

------
والساعة تظهر في المشروع بنظام 24
مع ان النظام 12

------
هل من الممكن استاذي الكريم
عندما تتساوي ساعة النظام مع الوقت المضاف
اي تصل الساعة الي الموجود END-TEM
وضع حدث معين ؟
شـكــ وبارك الله فيك ـــرا لك
لك مني أجمل تحية
:abc_138::abc_138:

ثامر أبو بلقيس
15-02-2015, 12:13 PM
السلام عليكم ورحمة الله وبركاته
b =os.date("!%X",thameur)

هذه الجزئية التي استغليتها في هذا الحل هي عبارة
عن تحول عدد الثواني التي تكتب في مكان thameur الى الدقائق و الساعات

على سبيل المثال لو تكتب
Dialog.Message("Notice", os.date("!%X",121));
ماذا سينتج
تتحول 120 ثانية لدقيقتين
و تبقى ثانية واحدة
00:02:01

لذلك استغليتها في تحويل كل الوقت للثواني وأضيف له
ما أريد بعد ما أحوله كذلك للثواني ويبقى دور الكود ليوزع كل تلك الثواني المتحصل عليها
الى وقت مكون من ثوان ودقائق وساعات

هذا عن هذه الجزئية :abc_138:

ثامر أبو بلقيس
15-02-2015, 12:19 PM
السلام عليكم ورحمة الله وبركاته

ارفع القيمة
Page.StartTimer( 10);
الى
Page.StartTimer( 1000);

في ON TIMER
لو أضفت لما هو مكتوب
مايلي :
if Input.GetText("Input1")==Input.GetText("END-TEM")then
Dialog.Message("Notice", "Your message here.", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
end

لا أدري هل تحقق المطلوب ؟ ام لا

ياسرهتهت
15-02-2015, 05:26 PM
بسم الله الرحمن الرحيم
شكراً لك استاذي الكريم
تحقق المطلوب
:abc_138::abc_138:
شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .
:abc_152::abc_152::abc_152:

ثامر أبو بلقيس
15-02-2015, 05:28 PM
موفق بإذن الله ... لك مني أجمل تحية . :abc_138:

ياسرهتهت
16-02-2015, 08:12 AM
السلام عليكم ورحمة الله وبركاته

ارفع القيمة
Page.StartTimer( 10);
الى
Page.StartTimer( 1000);

في ON TIMER
لو أضفت لما هو مكتوب
مايلي :
if Input.GetText("Input1")==Input.GetText("END-TEM")then
Dialog.Message("Notice", "Your message here.", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
end

لا أدري هل تحقق المطلوب ؟ ام لا

===================================
بسم الله الرحمن الرحيم

استاذي الكريم
كيف استطيع ان اجد الفرق بين الموجود END-TEM وInput1

أي عملية طرح
:abc_152::abc_152:

ثامر أبو بلقيس
16-02-2015, 10:54 AM
هي نفسها ما أضيف من خلال انبوت الدقائق و الساعات
ويمكن كذلك كتابة
s= System.GetTime(TIME_FMT_SEC);
m=System.GetTime(TIME_FMT_MIN);
h=System.GetTime(TIME_FMT_HOUR);
g = (m)*60+s+(h)*3600
yaser_m = String.ToNumber(Input.GetText("INSERT-M"))
yaser_h = String.ToNumber(Input.GetText("INSERT-H"))
thameur = ((m+yaser_m)*60)+s+((h+yaser_h)*3600)
---------
b =os.date("!%X",thameur)
Input.SetText("END-TEM", b);
------
thameur2=thameur-g
Dialog.Message("Notice",os.date("!%X",thameur2));


موفق .

ياسرهتهت
16-02-2015, 06:17 PM
بسم الله الرحمن الرحيم
شكراً لك استاذي الكريم
:abc_050::abc_050:
:abc_052: