عيدكم مبارك على جميع المشتركين
ممكن كود للسحب والافلات ملف عن طريق الماوس داخل البرنامج الاحظار مساره ووضعه في اداة ليبل داخل البرنامج وعرضه
والسلام عليكم ورحمة الله وبركاته

السلام عليكم...
لتجربة الكود التالي:
ضع على الـ Form مكون Label. اجعله عريضاً بعض الشيء (لا يهم ارتفاعه) ثم اضبط له الخصائص التالية:
أ. الخاصية OLEDragMode على 1-Manual.
ب. الخاصية WordWrap على True.
ج. الخاصية AutoSize على True.
* اضبط الخاصية WordWrap قبل الخاصية AutoSize حتى لا يتقلص عرض الـ Label.
في الحدث OLEDragOver للـ Label اكتب الكود التالي:
كود :
If Data.GetFormat(vbCFFiles) Then
Effect = vbDropEffectCopy And Effect
Else
Effect = vbDropEffectNone
End If
في الحدث OLEDragDrop للـ Label اكتب الكود التالي:
كود :
Dim Idx As Long
Dim FilesNames As String
If Data.GetFormat(vbCFFiles) Then
FilesNames = Data.Files(1)
For Idx = 2 To Data.Files.Count
FilesNames = FilesNames & vbCrLf & Data.Files(Idx)
Next Idx
Label1.Caption = FilesNames
End If
* شغل البرنامج و اسحب ملفاً واحداً أو أكثر على الـ Label من الـ Windows Explorer. عند الافلات ستظهر مسارات و أسماء الملفات في الـ Label.
* يمكنك تعديل الكود في الحدث OLEDragDrop لمنع قبول أكثر من ملف واحد و ذلك باختبار Data.Files.Count ما إذا كانت أكبر من 1.
* أصبح لديك مسار و اسم الملف في الـ Label و بالتالي يمكنك اختبار نوعه (txt مثلاً) و استعمال جملة Open لفتحه و عرضه في TextBox أو - إذا كان ملف صورة - في PictureBox... إلخ.
نرجو الاستفادة و السلام.