تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] كيفية منع تكرار ملف مرتبط بزر ديناميكي
#1
السلام عليكم
لديا فلو ليوت بنل به مجموعة من الازرار المستحدثة  الغير مفعلة بمثاية قائمة ملفات يتم اخيارها عن طريق اوبن فايل ديالوج
يتم تفعيل عدد من الازاز العير مفعلة حسب عدد الملفات المختارة عن طريق الاوبن فايل
سؤالي هنا كيف استطيع منع اختيار نفس الملف مرة اخرى اذا كان الزر المناط به مفغل وعند اختيار ملف مكرر يتم حذفه مع تحديده
و للتوضيح اكثر سارفق مثال بسيط لكيقية استحداث الازراز و تفعيلها حسب عدد الملفات المخنارة
و شكرا مسبقا


الملفات المرفقة
.rar   How to Remove Duplicated Dynamic Button.rar (الحجم : 69.15 ك ب / التحميلات : 14)
الرد }}}
تم الشكر بواسطة:
#2
كود :
Public Class Form1
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
        Dim btnSize = New Size(25, 15)
        For i = 1 To 16
            Dim btn As New Button With {.Text = i, .Size = btnSize, .Enabled = False}
            btn.UseVisualStyleBackColor = True
            btn.Font = New Font("Microsoft Sans Serif", 5.0F)
            btn.Margin = New Padding(0)
            AddHandler btn.Click, AddressOf Bouton_Click
            Me.FlowLayoutPanel1.Controls.Add(btn)
        Next
        FlowLayoutPanel1.AutoSize = False
        FlowLayoutPanel1.AutoScroll = False
        FlowLayoutPanel1.Width = (btnSize.Width * 5)
        FlowLayoutPanel1.Height = (btnSize.Height * 3)
    End Sub
    Private Sub Bouton_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim btn As Button = sender
        MsgBox("you have clicked : button " & btn.Text & vbNewLine & IO.Path.GetFileName(btn.Tag))
    End Sub
    Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
        Dim OpenFile As New OpenFileDialog With {.Multiselect = True}
        If OpenFile.ShowDialog() = DialogResult.OK Then
            Dim buttons = Me.FlowLayoutPanel1.Controls.OfType(Of Button)()
            For Each fn As String In OpenFile.FileNames
                If buttons.Any(Function(x) x.Tag = fn) Then Continue For
                Dim btn = buttons.FirstOrDefault(Function(b) b.Enabled = False)
                If btn Is Nothing Then Exit For
                btn.Enabled = True
                btn.BackColor = Color.Turquoise
                btn.Tag = fn
            Next
        End If
    End Sub
End Class
الرد }}}
تم الشكر بواسطة: asmarsou , asemshahen5 , ابو روضة , ابو روضة
#3
(11-01-22, 05:07 PM)E100 كتب :
كود :
Public Class Form1
   Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
       Dim btnSize = New Size(25, 15)
       For i = 1 To 16
           Dim btn As New Button With {.Text = i, .Size = btnSize, .Enabled = False}
           btn.UseVisualStyleBackColor = True
           btn.Font = New Font("Microsoft Sans Serif", 5.0F)
           btn.Margin = New Padding(0)
           AddHandler btn.Click, AddressOf Bouton_Click
           Me.FlowLayoutPanel1.Controls.Add(btn)
       Next
       FlowLayoutPanel1.AutoSize = False
       FlowLayoutPanel1.AutoScroll = False
       FlowLayoutPanel1.Width = (btnSize.Width * 5)
       FlowLayoutPanel1.Height = (btnSize.Height * 3)
   End Sub
   Private Sub Bouton_Click(ByVal sender As Object, ByVal e As EventArgs)
       Dim btn As Button = sender
       MsgBox("you have clicked : button " & btn.Text & vbNewLine & IO.Path.GetFileName(btn.Tag))
   End Sub
   Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
       Dim OpenFile As New OpenFileDialog With {.Multiselect = True}
       If OpenFile.ShowDialog() = DialogResult.OK Then
           Dim buttons = Me.FlowLayoutPanel1.Controls.OfType(Of Button)()
           For Each fn As String In OpenFile.FileNames
               If buttons.Any(Function(x) x.Tag = fn) Then Continue For
               Dim btn = buttons.FirstOrDefault(Function(b) b.Enabled = False)
               If btn Is Nothing Then Exit For
               btn.Enabled = True
               btn.BackColor = Color.Turquoise
               btn.Tag = fn
           Next
       End If
   End Sub
End Class

تمام التمام .... اتم الله عليك بوافر النعم و كفاك شر النقم
الف شكر اخي الكريم
الرد }}}
تم الشكر بواسطة: asemshahen5 , asemshahen5 , ابو روضة , ابو روضة


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيفية منع ظهور الأخطاء من إعدادات البيسيك mmaalmesry 2 856 29-08-25, 10:30 AM
آخر رد: mmaalmesry
  كيفية جلب أسماء الأعمدة بجدول من جداول sql heem1986 2 750 17-08-25, 09:15 PM
آخر رد: heem1986
  كيفية حفظ إعدادات البرنامج بحيث لا تتغير أحمد إبراهيم سعد 4 3,004 06-08-25, 06:34 PM
آخر رد: Taha Okla
  مساعدة في كيفية ترحيل البيانات من داتا قريدفيو إلى داتا قريدفيو في فيجوال بيسك ahmedfa71 13 2,264 09-07-25, 11:24 PM
آخر رد: أبو خالد الشكري
  سبب تكرار رسالة التنبيه مصمم هاوي 4 433 03-05-25, 02:05 PM
آخر رد: مصمم هاوي
  مساعدة في كود عدم تكرار استدعاء نفس السؤال من المصفوفة fireswored1 5 551 10-02-25, 05:11 PM
آخر رد: fireswored1
  كيفية احتساب الفرق بين تاريخين بناء على عدد معين مصمم هاوي 2 555 15-01-25, 02:02 PM
آخر رد: مصمم هاوي
  كيفية التعامل مع inputbox في فيجوال ستوديو أسامة حسين 4 3,516 14-01-25, 02:04 AM
آخر رد: أبو خالد الشكري
  كيفية معرفة الجهاز رئيسي ام فرعي المتألق9 1 401 13-11-24, 06:41 PM
آخر رد: justforit
  كيفية معرفة تاريخ انشاء ملف وحدفه المتألق9 2 514 07-11-24, 08:54 AM
آخر رد: F.H.M

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


يقوم بقرائة الموضوع: