08-01-15, 02:57 AM
(آخر تعديل لهذه المشاركة : 08-01-15, 02:58 AM {2} بواسطة الشاكي لله.)
PHP كود :
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//كل ماعليك هو تحديد الوقت بالاسفل
TimeSpan LockerTime = TimeSpan.Parse("17:59:57");
TimeSpan UnLockerTime = TimeSpan.Parse("17:59:50");
//------------------------------------------------------------------------------------------------
[DllImport("user32.dll")]
static extern bool BlockInput(bool fBlockIt);
private void Form1_Load(object sender, EventArgs e)
{
timer1.Interval = 1000;
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
TimeSpan currentTime = TimeSpan.Parse(DateTime.Now.ToString("HH:mm:ss"));
if (currentTime.CompareTo(LockerTime) == 0)
{
this.Show(); //اظهار الفورم
BlockInput(false); //تجميد الماوس والكيبورد
}
else if (currentTime.CompareTo(UnLockerTime) == 0)
{
this.Hide(); //اخفاء الفورم
BlockInput(false); //تفعيل الماوس والكيبورد
}
}
}
هذا هو الكود بالسي شارب
طبعا هو يتعامل مع الوقت على اساس نظام ال24 ساعة
نظام الam والpm شغلته مملة شوي لان timespan ماتقبل عمل parse له بسهولة
لازمه بعض التحويلات بين datetime والtimespan
وكذلك قد تحدث اخطاء بسبب اختلاف لغات الوندوز - يعني في بعض الاجهزة تشوف الوقت مثلا ينكتب( 10:00AM )
بينما في اجهزة اخرى التي تستعمل نظام تشغيل عربي تنكتب( 10:00 صباحا)
فكما ترى هذا قد يسبب مشكلة في المقارنة (الجملة الشرطية) - (رغم انه توجد حلول لتفادي هذا الامر) .
لكن لاتتعب نفسك وتسوي لك شغلات انت في غنى عنها قافضل شيئ انك دائما تتعامل على نظام ال24 ساعة

