تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
حفظ التغيرات التي حدثت غي البرنامج بعد غلقه
#1
اهلا اخواني
لدي قائمة list box
اريد ان يحفظ البرنامج التغيرات التي حدثت فيه حتى بعد غلق البنامج
بحيث انه عند فتحه ثانية اجد التعديلات التي قد قمت بها Smile
لا أن ابدأ من الأول Smile

هل من حل ؟
الرد }}}}
تم الشكر بواسطة:
#2
أما من رد ؟:eek:
الرد }}}}
تم الشكر بواسطة:
#3
السلام عليكم ورحمة الله وبركاته
الصراحه ماعرف الكود اللي تريده :confused:
جرب طريقه ثانيه احسن وهي ربطها بقاعدة بيانات.
وان شاء الله الاعضاء اللي بالمنتدى راح يساعدوك
الرد }}}}
تم الشكر بواسطة:
#4
Crazy"vb كتب :السلام عليكم ورحمة الله وبركاته
الصراحه ماعرف الكود اللي تريده :confused:
جرب طريقه ثانيه احسن وهي ربطها بقاعدة بيانات.
وان شاء الله الاعضاء اللي بالمنتدى راح يساعدوك
اشكرك اخي على مساعدتك لكن لا أستطيع ربطها بقاعدة بيانات
الرد }}}}
تم الشكر بواسطة:
#5
السلام عليكم ورحمة الله وبركاته

كود :
' استعراض العناصر المحفوظة
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim MyItems As String = Application.UserAppDataRegistry.GetValue("MyItems") ' استعادة العناصر المحفوظة في الريجستري
        If Not String.IsNullOrEmpty(MyItems) Then ' التأكد من وجود بيانات
            Dim Items() As String = MyItems.Split("|") ' تقسيم العناصر
            Me.ListBox1.Items.AddRange(Items.ToArray) ' إضافة العناصر لأداة الليست دفعة واحدة
        End If
    End Sub


    ' حفظ العناصر السابقة والجديدة
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        Try
            Dim items As String = "" ' حاوية العناصر
            If Me.ListBox1.Items.Count > 0 Then ' التحقق من احتواء أداة الليست علي عناصر
                For Each s As String In Me.ListBox1.Items ' حلقة للدوران علي عناصر الأداة
                    If s <> "" Then ' التححق من عدم خلو المتغير من بيانات
                        items += s & "|" ' إضافة قيمة العنصر لحاوية العناصر
                    End If
                Next
                items = items.TrimEnd("|") ' حذف آخر علامة لأننا لا نحتاج إليها
                Application.UserAppDataRegistry.SetValue("MyItems", items) ' حفظ البيانات في الريجستري
            End If
        Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Exclamation, "Error")
        End Try
    End Sub

قد توجد طرق أخرى أسهل من هذا

****
***
**
*
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}}
تم الشكر بواسطة:
#6
طريقه اخرى

اذهب الى
Settings << My Prject
فى خانة ال name اكتب اى اسم .. وليكن itms

وخانة ال Type اختار System.Collections.Specialized.StringCollection

ثم فى حدث Form1_Load ضع هذا الكود

PHP كود :
If My.Settings.itms IsNot Nothing Then
            
For Each item In My.Settings.itms
                ListBox1
.Items.Add(item)
            
Next
        End 
If 

وفى حدث Form1_FormClosing ضع هذا الكود
PHP كود :
My.Settings.itms.Clear()
        For 
Each item In ListBox1.Items
            My
.Settings.itms.Add(item)
        
Next
        My
.Settings.Save() 
بالتوفيق ان شاء الله
"الناس نيام فإذا ماتوا إنتبهوا"
الرد }}}}
تم الشكر بواسطة:
#7
kslawy كتب :السلام عليكم ورحمة الله وبركاته

كود :
' استعراض العناصر المحفوظة
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim MyItems As String = Application.UserAppDataRegistry.GetValue("MyItems") ' استعادة العناصر المحفوظة في الريجستري
        If Not String.IsNullOrEmpty(MyItems) Then ' التأكد من وجود بيانات
            Dim Items() As String = MyItems.Split("|") ' تقسيم العناصر
            Me.ListBox1.Items.AddRange(Items.ToArray) ' إضافة العناصر لأداة الليست دفعة واحدة
        End If
    End Sub


    ' حفظ العناصر السابقة والجديدة
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        Try
            Dim items As String = "" ' حاوية العناصر
            If Me.ListBox1.Items.Count > 0 Then ' التحقق من احتواء أداة الليست علي عناصر
                For Each s As String In Me.ListBox1.Items ' حلقة للدوران علي عناصر الأداة
                    If s <> "" Then ' التححق من عدم خلو المتغير من بيانات
                        items += s & "|" ' إضافة قيمة العنصر لحاوية العناصر
                    End If
                Next
                items = items.TrimEnd("|") ' حذف آخر علامة لأننا لا نحتاج إليها
                Application.UserAppDataRegistry.SetValue("MyItems", items) ' حفظ البيانات في الريجستري
            End If
        Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Exclamation, "Error")
        End Try
    End Sub

قد توجد طرق أخرى أسهل من هذا

****
***
**
*
أسف للأنقطاع عنكم و عدم الرد بسرعة و أشكركم لأهتمامكم
شكرا اخي على هذا الكود لكنه صعب فعلا بعض الشئ Smile
الرد }}}}
تم الشكر بواسطة:
#8
learning.net كتب :طريقه اخرى

اذهب الى
Settings << My Prject
فى خانة ال name اكتب اى اسم .. وليكن itms

وخانة ال Type اختار System.Collections.Specialized.StringCollection

ثم فى حدث Form1_Load ضع هذا الكود

PHP كود :
If My.Settings.itms IsNot Nothing Then
            
For Each item In My.Settings.itms
                ListBox1
.Items.Add(item)
            
Next
        End 
If 

وفى حدث Form1_FormClosing ضع هذا الكود
PHP كود :
My.Settings.itms.Clear()
        For 
Each item In ListBox1.Items
            My
.Settings.itms.Add(item)
        
Next
        My
.Settings.Save() 
بالتوفيق ان شاء الله
أخي الكريم أشكرك على أهتمامك Smile
لكن عند غلق البرنامج تأتيني الرسالة التالية
Object reference not set to an instance of an object.
ما العمل ؟
الرد }}}}
تم الشكر بواسطة:
#9

السلام عليكم ورحمة الله وبركاته




نذهب الى خصائص المشروع عن طريق النقر مرتين على My Project في نافذة مستعرض المشروع في اليمين
أو من القائمة Project نختار Properties آخر خيار
ثم نحدد التبويب Settings في اليسار
نكتب في Name اسم المتغير وليكن itms
نحدد في Type الخيار System.Collections.ArrayList


فان لم نجدها نختار ...Browse في الأخير، ثم نوسع System.Collections ونختار منها ArrayList


ثم نضع هذا الكود لحفظ واسترجاع عناصر ListBox1
PHP كود :
Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
    
If My.Settings.itms IsNot Nothing Then
        Me
.ListBox1.Items.AddRange(My.Settings.itms.ToArray())
    
End If

End Sub

Private Sub Form1_FormClosing(ByVal sender As ObjectByVal e As System.Windows.Forms.FormClosingEventArgsHandles Me.FormClosing
    My
.Settings.itms = New ArrayList(ListBox1.Items)
    
My.Settings.Save()

End Sub 



[COLOR="#FF0000"]تم تصحيح إلى System.Collections



[/COLOR]
السلام عليكم ورحمة الله وبركاته
الرد }}}}
تم الشكر بواسطة:
#10
@@أبورائد@@ كتب :
السلام عليكم ورحمة الله وبركاته


ش

أولا: نذهب الى خصائص المشروع عن طريق النقر مرتين على My Project في نافذة مستعرض المشروع في اليمين
أو من القائمة Project نختار Properties اخر اختيار
ثم نختار التبويب Settings في اليسار
نكتب في Name اسم المتغير وليكن itms
نحدد في Type الاختيار System.Connections.ArrayList

فان لم تجدها اختر Browse ثم نفتح System.Connections ونختار منها ArrayList


ثم نضع هذا الكود لحفظ عناصر الـ ListBox1


PHP كود :
Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
    
If My.Settings.itms IsNot Nothing Then
        Me
.ListBox1.Items.AddRange(My.Settings.itms.ToArray())
    
End If

End Sub

Private Sub Form1_FormClosing(ByVal sender As ObjectByVal e As System.Windows.Forms.FormClosingEventArgsHandles Me.FormClosing
    My
.Settings.itms = New ArrayList(ListBox1.Items)
    
My.Settings.Save()

End Sub 





السلام عليكم ورحمة الله وبركاته

شكرا أخي على أهتمامك لكن System.Connections غير موجودة في القائمة أساسا ، وعندما كتبت في مربع selected typy جملة System.Connections.ArrayList قال انها غير موجودة ......
ما العمل الآن؟
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] كيف اخلي البرنامج يشتغل بدون نت فروم ورك و طريقة اختيار النت فروم ورك hassan 10 4,989 أمس, 08:04 AM
آخر رد: hatem555
  [VB.NET] اريد كود حفظ العمل على البرنامج ؟؟ عامر الجبوري 4 93 16-05-17, 12:54 PM
آخر رد: عامر الجبوري
  يظهر خطاء بعد تنصيب البرنامج ساعدوني samawi 5 120 15-05-17, 04:08 AM
آخر رد: samawi
  [SQL] التاريخ في البرنامج العواد الصغير 7 189 14-05-17, 06:17 PM
آخر رد: العواد الصغير
  اخطاء في البرنامج zinab ali 1 49 08-05-17, 12:44 AM
آخر رد: zinom
  [VB.NET] كيفية فتح البرنامج اكتر من مرة بشروط معينة الماجيك مسعد 6 129 07-05-17, 04:15 AM
آخر رد: الماجيك مسعد
  كود حماية البرنامج من النسخ والسرقة ramimohammed 2 121 01-05-17, 03:39 PM
آخر رد: أسامة السالمي
  كيفية ربط البرنامج مع الاكسس اللي موجود علي ال Share point khaled12345 0 48 17-04-17, 05:55 PM
آخر رد: khaled12345
  كيف اجعل برنامجي هو البرنامج الافتراضي؟ Incubus 2 147 07-04-17, 12:36 AM
آخر رد: Ratchinko
  كيفية فتح البرنامج ب resolution معين OakenShield 1 77 05-04-17, 12:01 PM
آخر رد: OakenShield

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم