منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] كيف أجعل البرنامج يفتح نموذج واحد فقط - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] كيف أجعل البرنامج يفتح نموذج واحد فقط (/showthread.php?tid=37334)

الصفحات: 1 2 3 4


RE: كيف أجعل البرنامج يفتح نموذج واحد فقط - asmarsou - 05-02-21

(05-02-21, 03:47 PM)سعود كتب :
اخي الكريم هل نسيت تفعيل الخيار المشار اليه بالسهم؟!
هذا هو اللذي يمنع التشغيل المكرر لنفس التطبيق.

اخي الكريم مارايك بالاطلاع على المشروع التالي فقط للفضولSmile ... و جاري الاطلاع على المرفق الخاص بك.


تنبيه!
اذا لم تكن بحاجة لاطار الـwmp فلا حاجة لاضافة الـobject وانما فقط اضف الـ Reference.[فائدة على جنب - هامش]

معذرة اخي الكريم توجد ملفات لا ادري مافائدتها مثل UltraID3Lib.dll
ايضا وجدت ملف معلومات (حسب معرفتي لست بحاجة اليها ) مثل ملف  tempfile.temp
اخي الكريم سعود الخانة التي اشرت لي بها بسهم ازرق قمت بتفعيلها اي اشرت عليها
و فيما يخص ملحق البوم ملفات الصوتية قد اطلعت عليه و لكنه لا يفتح لي كل عناصر المشروع ...حسب ضني انه بسبب اختلاف نسخ الفيجوال المستعمله عندي و عندك...انا استعمل فيجوال بيسك 2010 اكسرس
اما ايطار الwmp فاضفته لتجنب الاخطاء
و اما ملفات ال UltraID3Lib.dll فهي لتعبئة خانات الليست فيو عند اختار الملفات بواسطة الاوبن فايل كما في المثال الذي ارفقته و الذي يوضع في بوتن الفتح كما يلي
 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        ' Adding files to playlist
        OpenFileDialog1.Multiselect = True
        OpenFileDialog1.FileName = ""
        OpenFileDialog1.Filter = "MP3 Files (*.mp3)|*.mp3"
        Dim results As DialogResult
        results = OpenFileDialog1.ShowDialog()
        If results = Windows.Forms.DialogResult.OK Then
            Dim f As IO.FileInfo
            Dim s As String
            Dim ultra As New UltraID3
            Dim tmp As Integer
            For Each s In OpenFileDialog1.FileNames
                Dim lvi As New ListViewItem
                ultra.Read(s)
                f = My.Computer.FileSystem.GetFileInfo(OpenFileDialog1.FileName)

                ' Gathers info using UltraID3 library, or if no ID3 tags available, use filename as trackname
                ' save these all to listview in a proper format
                If ultra.Title() = "" Then
                    lvi.Text = f.Name()
                Else
                    lvi.Text = ultra.Title()
                End If
                tmp = tmp + 1
                lvi.SubItems.Add(ultra.Artist())
                tmp = tmp + 1
                lvi.SubItems.Add(ultra.Album())
                tmp = tmp + 1
                lvi.SubItems.Add(ultra.Genre())
                tmp = tmp + 1
                lvi.SubItems.Add(s)
                lvi.SubItems.Add(0)
                Form2.ListView1.Items.Add(lvi)
            Next
        End If
    End Sub
يعني ان الكون لا يشتعل بدون تلك الملفات الديناميكية dll
 اما ملف ال tempfile فهو لتجنب الايقاف المفاجئ عند تشغيل البرنامج ....لانه مثلا عندما تقوم بحذف ملف او اضافة ملف جديد او حفض القائمة و البرنامج قيد التشغيل يتوقف البرنامج و يعطي رسالة تفيد ان الملف الذي تقوم بالتعديل علية مستعمل من بروسس اخر و يتوقف البرنامج كليا....فاستحدت التومب فايل للعمل عليه و عند فتح البرنامج مجددا يتم اعادة تسميتة و من ثم حذفه
و لتعم الفائدة اكثر سابسط لك
نفترض انه لديك قائمة المفضلة تعرضها في ليست بوكس او ليست فيو او اي شيء اخر تحفضها في تكست في الريسورس باسم المفضلة 1 او temp او اي مسمى اخر
وعند استدعاءه يقوم البرنامج باعادة تسمية المفضلة 1 ب المفضلة و يحذف المفضلة 1 وهكذا دوليك يعني تصدير المعلومات لتكست المفضلة 1 و عند الاستراد تؤخذ المعلومات منها بعد اعادة تسميتها و حذفها كل ذلك لتفادي خطاء البروسس الذي ذكرته لك
ارجو اني تمكنت من التوضيح بطرقة يسهل فهمها


RE: كيف أجعل البرنامج يفتح نموذج واحد فقط - سعود - 05-02-21

بصراحة انشغلت بانشاء مثال جديد و حرصت على ان يكون مميز قدر المستطاع
اسقط ملفات على ايقونة البرنامج وايضا على الليست بوكس.
هذا المثال هو اقصى شيء اقدر عليه يتم الحفظ في ملف mysettings بمعنى لو تم نقل او نسخ البرنامج ستطير كل المعلومات
mp3 wav wma
player
جرب تشغيل البرنامج مرة اخرى بكل الطرق ستجد مايسرك
واعتذر عن التعديل على مشروعك للعلل اللتي ذكرتها لك.
والسلام عليكم و رحمة الله و بركاته



RE: كيف أجعل البرنامج يفتح نموذج واحد فقط - asmarsou - 05-02-21

(05-02-21, 07:37 PM)سعود كتب :
بصراحة انشغلت بانشاء مثال جديد و حرصت على ان يكون مميز قدر المستطاع
اسقط ملفات على ايقونة البرنامج وايضا على الليست بوكس.
هذا المثال هو اقصى شيء اقدر عليه يتم الحفظ في ملف mysettings بمعنى لو تم نقل او نسخ البرنامج ستطير كل المعلومات
mp3 wav wma
player
جرب تشغيل البرنامج مرة اخرى بكل الطرق ستجد مايسرك
واعتذر عن التعديل على مشروعك للعلل اللتي ذكرتها لك.
والسلام عليكم و رحمة الله و بركاته

الف شكر لك اخي الكريم على المجهود