تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] كيفية تفعيل او الغاء امتداد ملف من فلتر الاوبن فايل ديالوج
#1
Photo 
السلام عليكم و رحمة الله و بركاته
هل هناك طريقة لتفعيل و الغاء امتداد ملف من فلتر الاوبن فايل ديالوج اثناء اختيار ملفات صور مثلا
بحيت تكون عدة ادوات التشاك بوكس تحمل اسماء امتدادات الصور حيث اذا كانت هذه الاخيرة مفعلة يدخل الامتداد في نطاق  اختيار قائمة الفلترة للاوبن فايل و العكس
اتمنى ان اجد ردا
مشكورين مسبقا
الرد }}
تم الشكر بواسطة: جيولوجي مبتدئ
#2
بصراحة لاول مرة افكر بهذا و ان شاء الله ان الكود هو ماتريد:
PHP كود :
Public Class Form1
    Dim fltr 
As String ""
 
   Private Sub Button1_Click(sender As System.ObjectAs System.EventArgsHandles Button1.Click
        Dim o 
As New OpenFileDialog
        o
.Filter fltr
        o
.ShowDialog()
 
   End Sub
    Private Sub CheckBox1_CheckedChanged
(sender As System.ObjectAs System.EventArgsHandles CheckBox4.CheckedChangedCheckBox3.CheckedChangedCheckBox2.CheckedChangedCheckBox1.CheckedChanged
        
'‎(*.txt)|*.txt|كافة الملفات (*.*)|*.*"
        Dim ch As CheckBox = DirectCast(sender, CheckBox)
        Dim firstfilter As String = "(" & ch.Tag & ")|*." & ch.Tag & ""
        Dim otherfilter As String = "| Other extensions (" & ch.Tag & ")|*." & ch.Tag & ""
        If ch.Checked = True Then
            If fltr.Trim = "" Then
                If fltr.Contains(firstfilter) = False Then
                    fltr = firstfilter
                End If
            Else
                If fltr.Contains(otherfilter) = False Then
                    fltr &= otherfilter
                End If
            End If
        Else
            If fltr.Contains(firstfilter) Then
                fltr = fltr.Remove(fltr.IndexOf(firstfilter), firstfilter.Length)
            End If
            If fltr.Contains(otherfilter) Then
                fltr = fltr.Remove(fltr.IndexOf(otherfilter), otherfilter.Length)
            End If
        End If
    End Sub
End Class 


نضع تاق لكل تشك بوكس
الرد }}
#3
(06-08-22, 10:58 PM)سعود كتب : بصراحة لاول مرة افكر بهذا و ان شاء الله ان الكود هو ماتريد:
PHP كود :
Public Class Form1
    Dim fltr 
As String ""
 
   Private Sub Button1_Click(sender As System.ObjectAs System.EventArgsHandles Button1.Click
        Dim o 
As New OpenFileDialog
        o
.Filter fltr
        o
.ShowDialog()
 
   End Sub
    Private Sub CheckBox1_CheckedChanged
(sender As System.ObjectAs System.EventArgsHandles CheckBox4.CheckedChangedCheckBox3.CheckedChangedCheckBox2.CheckedChangedCheckBox1.CheckedChanged
        
'‎(*.txt)|*.txt|كافة الملفات (*.*)|*.*"
        Dim ch As CheckBox = DirectCast(sender, CheckBox)
        Dim firstfilter As String = "(" & ch.Tag & ")|*." & ch.Tag & ""
        Dim otherfilter As String = "| Other extensions (" & ch.Tag & ")|*." & ch.Tag & ""
        If ch.Checked = True Then
            If fltr.Trim = "" Then
                If fltr.Contains(firstfilter) = False Then
                    fltr = firstfilter
                End If
            Else
                If fltr.Contains(otherfilter) = False Then
                    fltr &= otherfilter
                End If
            End If
        Else
            If fltr.Contains(firstfilter) Then
                fltr = fltr.Remove(fltr.IndexOf(firstfilter), firstfilter.Length)
            End If
            If fltr.Contains(otherfilter) Then
                fltr = fltr.Remove(fltr.IndexOf(otherfilter), otherfilter.Length)
            End If
        End If
    End Sub
End Class 


نضع تاق لكل تشك بوكس
 الله اكبر ما شاء الله و لا قوة الا بالله
الف شكر استاذ
الرد }}
#4
(06-08-22, 11:16 PM)asmarsou كتب :  الله اكبر ما شاء الله و لا قوة الا بالله
الف شكر استاذ

الحمدلله
من بعدكم جميعا سباقين للخير.
الرد }}
#5
(06-08-22, 11:20 PM)سعود كتب :
(06-08-22, 11:16 PM)asmarsou كتب :  الله اكبر ما شاء الله و لا قوة الا بالله
الف شكر استاذ

الحمدلله
من بعدكم جميعا سباقين للخير.

تمام و لله الحمد
فقط  تعديل بسيط حتى يتسنى للباحثين الاستفادة من الكود
حيث نعطي لكل تشاك بوكس كخاصية تكست باسم الامتداد
و نغير في الكود من ch.tag الى ch.text
بارك الله لك و فيك مجددا
الرد }}
#6
سبحان الله
انها ليست اول مرة اللذي حدث معي اليوم.
لي كم يوم لم اجتز عقبة بوجهي في اتمام كود تقسيم ملف واعادة تجميعه بسبب مشكلة بسيطة جدا لم افهمها او اكشفها الا اليوم وخصوصا بعد مشاركتي في موضوعك هذا.
سبحان الله.
الرد }}
#7
PHP كود :
Imports System
Imports System
.Collections.Generic
Imports System
.ComponentModel
Imports System
.Data
Imports System
.Drawing
Imports System
.Text
Imports System
.Windows.Forms
Imports System
.IO

Namespace FileCutter
    
    
'This class is used to call the actual file operation class.
    Public Class Form1
        Inherits Form
        
        Public Sub New()
            MyBase.New
            InitializeComponent
            Me.Text = "File cutter & assembler (upto 1.96 GB) by Suman Biswas"
        End Sub
        
        Private obj As FileHandling = New FileHandling
        
        Private Sub btnSelectFile_Click(ByVal sender As Object, ByVal e As EventArgs)
            Me.obj.SplitUp(Me.SelectFile, Integer.Parse(textBox1.Text))
        End Sub
        
        Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
            Me.obj.MargeUp(Me.SelectFile)
        End Sub
        
        Private Function SelectFile() As String
            Dim fbd As OpenFileDialog = New OpenFileDialog
            If (fbd.ShowDialog <> DialogResult.OK) Then
                MessageBox.Show("No file selected")
                Return ""
            Else
                Return fbd.FileName
            End If
            
        End Function
    End Class
    
    '
Main file operation is done here.
 
   Class FileHandling
        
        Private sliceLen 
As Integer = (1024 1024)
 
       
        Private counter 
As Integer 0
        
        Public Sub SplitUp
(ByVal filename As StringByVal fileSizeInMB As Integer)
 
           " 0;"
 
           buffer "new"
 
           br "new"
 
           slicelen = (" (int)br.BaseStream.Length;"  _
                        
> (Me.sliceLen Me.counter))
 
           If (br.BaseStream.Length  _
                        
> (Me.sliceLen  _
                        
* (Me.counter 1))) Then
                br
.BaseStream.Read(buffer0Me.sliceLen)
 
               curFileName = (filename + ("." Me.counter.ToString))
 
           Else
                Dim remainLen 
As Integer = (CType(br.BaseStream.Length,Integer _
                            
- (Me.sliceLen Me.counter))
 
               buffer = New Byte((remainLen) - 1) {}
 
               br.BaseStream.Read(buffer0remainLen)
 
               curFileName = (filename + ("."  _
                            
+ (Me.counter.ToString ".E")))
 
           End If
 
           
            If File
.Exists(curFileNameThen
                File
.Delete(curFileName)
 
           End If
 
           
            File
.WriteAllBytes(curFileNamebuffer)
 
           Me.counter = (Me.counter 1)
 
           br.Close
            MessageBox
.Show("File spilitted successfully")
 
       End Sub
        
        Public Sub MargeUp
(ByVal firstFileName As String)
 
           If (firstFileName.Length 1Then
                Return
            End 
If
 
           
            Dim endPart 
As String firstFileName
            Dim orgFile 
As String ""
 
           orgFile endPart.Substring(0endPart.LastIndexOf("."))
 
           endPart endPart.Substring((endPart.LastIndexOf(".") + 1))
 
           If (endPart "E"Then
                orgFile 
orgFile.Substring(0orgFile.LastIndexOf("."))
 
               endPart "0"
 
           End If
 
           
            If File
.Exists(orgFileThen
                If 
(MessageBox.Show((orgFile " already exists, do you want to delete it"), ""MessageBoxButtons.YesNo) = DialogResult.YesThen
                    File
.Delete(orgFile)
 
               Else
                    MessageBox
.Show("File not assembled. Operation cancelled by user.")
 
                   Return
                End 
If
 
               
            End 
If
 
           
            
'Assembling starts from here
            Dim bw As BinaryWriter = New BinaryWriter(File.Open(orgFile, FileMode.Append))
            Dim nextFileName As String = ""
            Dim buffer() As Byte = New Byte((bw.BaseStream.Length) - 1) {}
            Dim counter As Integer = Integer.Parse(endPart)
            
            While true
                nextFileName = (orgFile + ("." + Me.counter.ToString))
                If File.Exists((nextFileName + ".E")) Then
                    '
Last slice
                    buffer 
File.ReadAllBytes((nextFileName ".E"))
 
                   bw.Write(buffer)
 
                   Exit While
 
               Else
                    buffer 
File.ReadAllBytes(nextFileName)
 
                   bw.Write(buffer)
 
               End If
 
               
                Me
.counter = (Me.counter 1)
 
               
            End 
While
 
           
            bw
.Close
            MessageBox
.Show("File assebled successfully")
 
       End Sub
    End 
Class
End Namespace 
(07-08-22, 12:06 AM)سعود كتب : سبحان الله
انها ليست اول مرة اللذي حدث معي اليوم.
لي كم يوم لم اجتز عقبة بوجهي في اتمام كود تقسيم ملف واعادة تجميعه بسبب مشكلة بسيطة جدا لم افهمها او اكشفها الا اليوم وخصوصا بعد مشاركتي في موضوعك هذا.
سبحان الله.

سبحان الله
لا تزال الفكرة في بالي حيث في وقت ما اقرء ردك هذا كنت احول كود من سي شارب الى ال في بي نت
لم اجربه بعد و لم المه بعد و هو كالتالي

(07-08-22, 12:21 AM)asmarsou كتب :
PHP كود :
Imports System
Imports System
.Collections.Generic
Imports System
.ComponentModel
Imports System
.Data
Imports System
.Drawing
Imports System
.Text
Imports System
.Windows.Forms
Imports System
.IO

Namespace FileCutter
    
    
'This class is used to call the actual file operation class.
    Public Class Form1
        Inherits Form
        
        Public Sub New()
            MyBase.New
            InitializeComponent
            Me.Text = "File cutter & assembler (upto 1.96 GB) by Suman Biswas"
        End Sub
        
        Private obj As FileHandling = New FileHandling
        
        Private Sub btnSelectFile_Click(ByVal sender As Object, ByVal e As EventArgs)
            Me.obj.SplitUp(Me.SelectFile, Integer.Parse(textBox1.Text))
        End Sub
        
        Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
            Me.obj.MargeUp(Me.SelectFile)
        End Sub
        
        Private Function SelectFile() As String
            Dim fbd As OpenFileDialog = New OpenFileDialog
            If (fbd.ShowDialog <> DialogResult.OK) Then
                MessageBox.Show("No file selected")
                Return ""
            Else
                Return fbd.FileName
            End If
            
        End Function
    End Class
    
    '
Main file operation is done here.
 
   Class FileHandling
        
        Private sliceLen 
As Integer = (1024 1024)
 
       
        Private counter 
As Integer 0
        
        Public Sub SplitUp
(ByVal filename As StringByVal fileSizeInMB As Integer)
 
           " 0;"
 
           buffer "new"
 
           br "new"
 
           slicelen = (" (int)br.BaseStream.Length;"  _
                        
> (Me.sliceLen Me.counter))
 
           If (br.BaseStream.Length  _
                        
> (Me.sliceLen  _
                        
* (Me.counter 1))) Then
                br
.BaseStream.Read(buffer0Me.sliceLen)
 
               curFileName = (filename + ("." Me.counter.ToString))
 
           Else
                Dim remainLen 
As Integer = (CType(br.BaseStream.Length,Integer _
                            
- (Me.sliceLen Me.counter))
 
               buffer = New Byte((remainLen) - 1) {}
 
               br.BaseStream.Read(buffer0remainLen)
 
               curFileName = (filename + ("."  _
                            
+ (Me.counter.ToString ".E")))
 
           End If
 
           
            If File
.Exists(curFileNameThen
                File
.Delete(curFileName)
 
           End If
 
           
            File
.WriteAllBytes(curFileNamebuffer)
 
           Me.counter = (Me.counter 1)
 
           br.Close
            MessageBox
.Show("File spilitted successfully")
 
       End Sub
        
        Public Sub MargeUp
(ByVal firstFileName As String)
 
           If (firstFileName.Length 1Then
                Return
            End 
If
 
           
            Dim endPart 
As String firstFileName
            Dim orgFile 
As String ""
 
           orgFile endPart.Substring(0endPart.LastIndexOf("."))
 
           endPart endPart.Substring((endPart.LastIndexOf(".") + 1))
 
           If (endPart "E"Then
                orgFile 
orgFile.Substring(0orgFile.LastIndexOf("."))
 
               endPart "0"
 
           End If
 
           
            If File
.Exists(orgFileThen
                If 
(MessageBox.Show((orgFile " already exists, do you want to delete it"), ""MessageBoxButtons.YesNo) = DialogResult.YesThen
                    File
.Delete(orgFile)
 
               Else
                    MessageBox
.Show("File not assembled. Operation cancelled by user.")
 
                   Return
                End 
If
 
               
            End 
If
 
           
            
'Assembling starts from here
            Dim bw As BinaryWriter = New BinaryWriter(File.Open(orgFile, FileMode.Append))
            Dim nextFileName As String = ""
            Dim buffer() As Byte = New Byte((bw.BaseStream.Length) - 1) {}
            Dim counter As Integer = Integer.Parse(endPart)
            
            While true
                nextFileName = (orgFile + ("." + Me.counter.ToString))
                If File.Exists((nextFileName + ".E")) Then
                    '
Last slice
                    buffer 
File.ReadAllBytes((nextFileName ".E"))
 
                   bw.Write(buffer)
 
                   Exit While
 
               Else
                    buffer 
File.ReadAllBytes(nextFileName)
 
                   bw.Write(buffer)
 
               End If
 
               
                Me
.counter = (Me.counter 1)
 
               
            End 
While
 
           
            bw
.Close
            MessageBox
.Show("File assebled successfully")
 
       End Sub
    End 
Class
End Namespace 
(07-08-22, 12:06 AM)سعود كتب : سبحان الله
انها ليست اول مرة اللذي حدث معي اليوم.
لي كم يوم لم اجتز عقبة بوجهي في اتمام كود تقسيم ملف واعادة تجميعه بسبب مشكلة بسيطة جدا لم افهمها او اكشفها الا اليوم وخصوصا بعد مشاركتي في موضوعك هذا.
سبحان الله.

سبحان الله
لا تزال الفكرة في بالي حيث في وقت ما اقرء ردك هذا كنت احول كود من سي شارب الى ال في بي نت
لم اجربه بعد و لم المه بعد و هو كالتالي
 مشكل في التحويل
عموما هذا رابط الموضوع بالسي شارب
https://socketprogramming.blogspot.com/2...round.html
الرد }}
#8
الاشكال اللي عندي الان فقط مع الملفات الصغيرة اما الملفات اللتي بحجم 500 وفوق لا مشكلة معها.
مع المثال الان قم بتقسيم الملف الصغير ثم اغلق البرنامج ثم قم بالدمج هكذا ينجح مع الملفات الصغيرة اما الاحجام الكبيرة فينجح من دون غلق البرنامج بل مباشرة بعد التقسيم يكون الدمج.

احاول معرفة الاشكال ولم استطع.
الرد }}


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Brick كيفية الإغلاق التام لـقاعدة بيانات SQL أبو خالد الشكري 18 549 03-08-22, 02:11 PM
آخر رد: أبو خالد الشكري
  سؤال كيفية اظهار reportviewer فى Visual Studio 2019 mohamed2316 2 171 03-08-22, 03:07 AM
آخر رد: mohamed2316
  [سؤال] تفعيل برنامج فيجوال استوديو حسن الجلب 5 268 30-07-22, 12:40 PM
آخر رد: حسن الجلب
  كيفية اضافة صورة كخلفية في الكريستال ريبورت atefkhalf2004 1 150 22-07-22, 05:06 PM
آخر رد: أبو خالد الشكري
  بالفيديو كيفية عمل تحديث للبرنامج crazykinko 1 198 20-07-22, 12:28 PM
آخر رد: معاند الحظ
  [سؤال] كيفية حفظ عناصر في مجلد بحسب ترتيبها في الليست بوكس asmarsou 1 204 13-07-22, 06:42 PM
آخر رد: ابراهيم ايبو
Rainbow سيريال تفعيل فيجوال ستوديو 2017 DK-x 4 11,295 18-06-22, 11:27 AM
آخر رد: رضوان الجماعي
  [VB.NET] كيفية التعديل علي firebase من خلال auth ميدو الفنان 2 433 12-06-22, 01:36 AM
آخر رد: أبو خالد الشكري
Question كيفية زيادة وانقاص الارقام العشرية في C# و VB.NET silverlord 4 427 29-05-22, 02:49 AM
آخر رد: silverlord
  كيفية استخدام autocomplete for textbox الماجيك مسعد 2 444 08-05-22, 09:31 PM
آخر رد: الماجيك مسعد

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


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