المشاركات : 48
المواضيع 14
الإنتساب : Jul 2014
السمعة :
1
الشكر: 0
تم شكره 10 مرات في 6 مشاركات
السلام عليكم
مواصلة لانهاء برنامجي احتاج الي مساعدتكم
كيف يمكنني تعديل التاريخ الهجري عند الضرورة اي حبنما لا يتوافق
الحساب مع الرؤية. بحيث استطيع زيادة يوم او يومين او حذفها. المشكلة كيف يمكنني
حفظ هذا التعديل في ذاكرة البرنامج بحيث حينما افتحه مرة اخرى اجد انه اخذ الزيادة او النقصان
بعين الاعتبار.
مع الشكر الجزيل لمن يستطيع مساعدتي.
المشاركات : 48
المواضيع 14
الإنتساب : Jul 2014
السمعة :
1
الشكر: 0
تم شكره 10 مرات في 6 مشاركات
السلام عليكم
أرجو المساعدة يا إخواني.
المشاركات : 14
المواضيع 1
الإنتساب : Sep 2013
السمعة :
1
الشكر: 77
تم شكره 11 مرات في 4 مشاركات
السلام عليكم
لتعديل التاريخ الهجري للكمبيوتر عموما وبالتالي في برنامجك سنقوم بتعديل قيمته بالريجستري كما يلي
كود :
'لإضافة يومان للتاريخ الهجري
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "AddHijriDate+2")
'لإضافة يوم واحد للتاريخ الهجري
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "AddHijriDate+1")
'لعدم إضافة أو إنقاص أي أيام
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "")
'لإنقاص التاريخ الهجري بمقدار يوم واحد
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "AddHijriDate")
'لإنقاص التاريخ الهجري بمقدار يومان
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "AddHijriDate-2")
'في نهاية الكود لا تنسى غلق مفتاح الريجستري الذي قمنا بتعديله
Microsoft.Win32.Registry.CurrentUser.Close()
المشاركات : 48
المواضيع 14
الإنتساب : Jul 2014
السمعة :
1
الشكر: 0
تم شكره 10 مرات في 6 مشاركات
لسلام عليكم
حاولت استعمال الكود لكن لم ينجح معي ربما لأنني لم أفهم كيف يعمل . هذا هو الكود هل يمكن تعديله لو سمحتم .
كود :
Private Sub NumericUpDown1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NumericUpDown1.ValueChanged
'لإضافة يومان للتاريخ الهجري
If NumericUpDown1.Value = 2 Then
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "AddHijriDate+2")
End If
'لإضافة يوم واحد للتاريخ الهجري
If NumericUpDown1.Value = 1 Then
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "AddHijriDate+1")
End If
'لعدم إضافة أو إنقاص أي أيام
If NumericUpDown1.Value = 0 Then
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "")
End If
'لإنقاص التاريخ الهجري بمقدار يوم واحد
If NumericUpDown1.Value = -1 Then
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "AddHijriDate-1")
End If
If NumericUpDown1.Value = -2 Then
'لإنقاص التاريخ الهجري بمقدار يومان
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True).SetValue("AddHijriDate", "AddHijriDate-2")
End If
'في نهاية الكود لا تنسى غلق مفتاح الريجستري الذي قمنا بتعديله
Microsoft.Win32.Registry.CurrentUser.Close()
End Sub
المشاركات : 48
المواضيع 14
الإنتساب : Jul 2014
السمعة :
1
الشكر: 0
تم شكره 10 مرات في 6 مشاركات
السلام عليكم
كيف يعمل هذا الكود لو سمحتم اخواني. فانا احتاجه.....
المشاركات : 17
المواضيع 2
الإنتساب : Dec 2013
السمعة :
-1
الشكر: 0
تم شكره 2 مرات في 1 مشاركات
وعليكم السلام
Imports System.Threading 'للتاريخ الهجري
Imports System.Globalization 'للتاريخ الهجري
كود :
'هذا الكود لجعل البرنامج يعمل بالتقويم الميلادي حتى لو الجهاز بالتقويم الهجري تستطيع وضعه في لوود الفورم
Threading.Thread.CurrentThread.CurrentCulture = New Globalization.CultureInfo("ar-eg")
Threading.Thread.CurrentThread.CurrentUICulture = New Globalization.CultureInfo("ar-eg")
TextBox1.Text = Format(Date.Now, "dd/MM/yyyy")
كود :
'هذا الكود لجعل البرنامج يعمل بالتقويم الهجري حتى لو الجهاز بالتقويم الميلادي تستطيع وضعه في لوود الفورم
Dim Ar As CultureInfo = New CultureInfo("AR-SA")
Thread.CurrentThread.CurrentCulture = Ar
Ar.DateTimeFormat.Calendar = New HijriCalendar
Ar.NumberFormat.DigitSubstitution = DigitShapes.NativeNational
TextBox1.Text = Format(Date.Now, "dd/MM/yyyy")
ان شاء الله يكون هذا ما تريد
المشاركات : 171
المواضيع 2
الإنتساب : Oct 2014
السمعة :
29
الشكر: 111
تم شكره 178 مرات في 92 مشاركات
14-12-14, 01:45 AM
(آخر تعديل لهذه المشاركة : 14-12-14, 02:37 AM {2} بواسطة الوليد ☺.)
السلام عليكم ورحمة الله
ملاحظات هامة:
يعمل فقط إذا كان نوع تقويم النظام "التاريخ الهجري" ولا يعمل مع نوع تقويم النظام "تقويم أم القرى".
المجال المسموح به فقط يومان زيادة أو نقصان: (-2), (-1), (0), (1+), (2+).
PHP كود :
Public Class Form1
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click ' يعمل فقط إذا كان نوع تقويم النظام التاريخ الهجري ولا يعمل مع نوع تقويم النظام تقويم أم القرى ' ' (+2), (+1), (0), (-1), (-2) :المجال فقط يومان زيادة أو نقصان '
If AddHijriDate(-1) Then Dim hijri As New Globalization.HijriCalendar MsgBox(Now.Date) End If
End Sub
Private Function AddHijriDate(days As Integer) As Boolean Try ' ملاحظات هامة ' ' يعمل فقط إذا كان نوع تقويم النظام التاريخ الهجري ولا يعمل مع نوع تقويم النظام تقويم أم القرى ' ' (+2), (+1), (0), (-1), (-2) :المجال المسموح به فقط يومان زيادة أو نقصان ' If Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International") _ .GetValue("iCalendarType") = 6 _ Then If Math.Abs(days) > 2 Then MsgBox("عفواً.. مجال الأيام المسموح به من (-2 إلى +2)", _ MsgBoxStyle.Exclamation + MsgBoxStyle.MsgBoxRight + MsgBoxStyle.MsgBoxRtlReading) Return False End If
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Control Panel\International", True) _ .SetValue("AddHijriDate", "AddHijriDate" & If(days < 0, days, "+" & days)) Return True Else MsgBox("عفواً.. نوع تقويم النظام يجب أن يكون التاريخ الهجري", _ MsgBoxStyle.Exclamation + MsgBoxStyle.MsgBoxRight + MsgBoxStyle.MsgBoxRtlReading) Return False End If Catch ex As Exception MsgBox(ex.Message) Return False End Try End Function
End Class
المشاركات : 48
المواضيع 14
الإنتساب : Jul 2014
السمعة :
1
الشكر: 0
تم شكره 10 مرات في 6 مشاركات
السلام عليكم
الشكر الجزيل لأخي الوليد و أخي المستكاوي
جازاكما الله ألف خير
المشاركات : 48
المواضيع 14
الإنتساب : Jul 2014
السمعة :
1
الشكر: 0
تم شكره 10 مرات في 6 مشاركات
السلام عليكم
أعتقد أنه تواجهني مشكلة عند استعمال الكودين ألا وهي :
- أن قاعدة البيانات عندي تعمل أساسا بالتفويم الميلادي لأن التفويم الهجري يتغير السنوات و الفصول
- وأن اوقات الصلوات هي بالأساس مبنية على أساس الحساب الشمسي من شروق و غروب الخ
- الكود يستوجب ان يعمل النظام بالتقويم الهجري وهذا أمر أخل بمعظم أجزاء البرنامج.
إذا فكيف يا إخواني أستطيع استعمال الكود الذي هو في الواقع يعمل بحيث يكون التاريخ الميلادي باللغة الفرنسية هو نظام الجهاز ويمكنني تعديل التاريخ الهجري عند الضرورة اي حبنما لا يتوافق الحساب مع الرؤية.
مع الشكر مسبقا
المشاركات : 48
المواضيع 14
الإنتساب : Jul 2014
السمعة :
1
الشكر: 0
تم شكره 10 مرات في 6 مشاركات
|