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


الملفات المرفقة
.rar   How to Remove Duplicated Dynamic Button.rar (الحجم : 69.15 ك ب / التحميلات : 7)
الرد
تم الشكر بواسطة:
#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 , ابو روضة , ابو روضة


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] السلام عليكم ورحمة الله وبركاته محتاج شرح كيفية البحث عن تفاصيل فاتوره فيجوال بيسك حسين ادريس 3 157 15-01-22, 11:24 AM
آخر رد: ابراهيم ايبو
  سؤال عن كيفية اخراج فاتوره البيع كامله للاستعلام فقط حسين ادريس 3 137 13-01-22, 06:27 AM
آخر رد: محمود صالح
  كيفية اضافة عملية بحث على web browser للملفات داخل البرنامج haithammoftah 3 268 29-12-21, 01:07 AM
آخر رد: سعود
  [SQL] كيفية جعل حقل ما غير قابل للتكرار mmaalmesry 4 247 26-12-21, 10:24 PM
آخر رد: E100
  كيفية عرض الصورة علي picturebox cordava 1 187 26-12-21, 01:59 AM
آخر رد: DR.YASER
  كيفية فحص Listview cordava 0 153 24-12-21, 08:01 AM
آخر رد: cordava
  [نقاش] كيفية تدوير الارصدة لفتح سنة مالية جديدة محمود بكرى 4 3,942 10-12-21, 01:28 PM
آخر رد: Taha Okla
  datagridview كيفية عمل نسخة مشابهه ibra9009 0 208 07-12-21, 10:00 AM
آخر رد: ibra9009
Lightbulb [VB.NET] كيفية نجعل CheckBox في DataGridView كأنه RadioButton أبو خالد الشكري 3 353 30-11-21, 02:12 PM
آخر رد: أبو خالد الشكري
  [VB.NET] كيفية تحويل قيمة textbox الي hex ابو ياسين ويزن 2 286 29-11-21, 09:35 PM
آخر رد: ابو ياسين ويزن

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


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