منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
سوؤال بخصوص أداة FlowLayoutPanel - نسخة قابلة للطباعة

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

الصفحات: 1 2


RE: سوؤال بخصوص أداة FlowLayoutPanel - جميل - 05-01-20

يبدو أنني فهمت خطأ من الصورة التي وضعتموها حضرتكم، بسبب وجود زر تشغيل ◄ وبروجرسبار،
فاعتقدت أن البرنامج خاص بتشغيل مقاطع على شكل قائمة، ولكن نافذة عرض المقطع غير ظاهرة في الصورة،

طوال يوم أمس وأنا أحاول على فهمي الخاطئ، وكيف أربط ProgressBar بمدة عرض المقطع حتى يأست من شدة التعب،

وقبل قليل عندما دخلت المنتدى وجدت الأخ الحبيب trakktour وضع صورة تبين أن الزر للتحميل وليس للتشغيل،
فرجعت بقراءة الموضوع من أوله فلم أجد إلا كلمة تحميل واحدة (لم أركز فيها على ما يبدو)،
فقمت بعدها بمراجعة مشروعك المرفق فلم أجد ما يوضح أن الموضوع يتعلق بالتحميل،

عموما كان هذا ما توصلت إليه (بمفهومي الخاطئ) بعد التعديل ولكن اتضح الآن أنه ليس الهدف النهائي لما تريد.

ولكن لمن يرغب في معرفة التعديل حسب هذه الصورة فهذه هي الطريقة:
حذف الأكواد التي في MyUserControl مع إضافة Button على الصورة
وفي الفورم إضافة WebBrowser
اضافة هذا الكود في الفورم
PHP كود :
   Private Sub Play_Click(sender As ButtonAs EventArgs)
 
       WebBrowser1.ScriptErrorsSuppressed True
        WebBrowser1
.Navigate(sender.Parent.Tag)
 
   End Sub 
إضافة هذه الأسطر قبل سطر ((FlowLayoutPanel1.Invoke(Sub() FlowLayoutPanel1.Controls.Add(uc
PHP كود :
                   Dim vid As String Regex.Match(src(i), "http://i.ytimg.com/vi/(.+?)/hqdefault.jpg").Groups(1).Value
                    uc
.Tag "https://www.youtube.com/embed/" vid "/?autoplay=1&rel=0"
 
                   AddHandler uc.Button1.ClickAddressOf Play_Click 

أتمنى أن يتم التوصل لطريقة تحميل المقاطع ليستفيد منه الجميع.


RE: سوؤال بخصوص أداة FlowLayoutPanel - ابو روضة - 05-01-20

(05-01-20, 11:50 AM)جميل كتب : يبدو أنني فهمت خطأ من الصورة التي وضعتموها حضرتكم، بسبب وجود زر تشغيل ◄ وبروجرسبار،
فاعتقدت أن البرنامج خاص بتشغيل مقاطع على شكل قائمة، ولكن نافذة عرض المقطع غير ظاهرة في الصورة،

طوال يوم أمس وأنا أحاول على فهمي الخاطئ، وكيف أربط ProgressBar بمدة عرض المقطع حتى يأست من شدة التعب،

وقبل قليل عندما دخلت المنتدى وجدت الأخ الحبيب trakktour وضع صورة تبين أن الزر للتحميل وليس للتشغيل،
فرجعت بقراءة الموضوع من أوله فلم أجد إلا كلمة تحميل واحدة (لم أركز فيها على ما يبدو)،
فقمت بعدها بمراجعة مشروعك المرفق فلم أجد ما يوضح أن الموضوع يتعلق بالتحميل،

عموما كان هذا ما توصلت إليه (بمفهومي الخاطئ) بعد التعديل ولكن اتضح الآن أنه ليس الهدف النهائي لما تريد.

ولكن لمن يرغب في معرفة التعديل حسب هذه الصورة فهذه هي الطريقة:
حذف الأكواد التي في MyUserControl مع إضافة Button على الصورة
وفي الفورم إضافة WebBrowser
اضافة هذا الكود في الفورم
PHP كود :
   Private Sub Play_Click(sender As ButtonAs EventArgs)
 
       WebBrowser1.ScriptErrorsSuppressed True
        WebBrowser1
.Navigate(sender.Parent.Tag)
 
   End Sub 
إضافة هذه الأسطر قبل سطر ((FlowLayoutPanel1.Invoke(Sub() FlowLayoutPanel1.Controls.Add(uc
PHP كود :
                   Dim vid As String Regex.Match(src(i), "http://i.ytimg.com/vi/(.+?)/hqdefault.jpg").Groups(1).Value
                    uc
.Tag "https://www.youtube.com/embed/" vid "/?autoplay=1&rel=0"
 
                   AddHandler uc.Button1.ClickAddressOf Play_Click 

أتمنى أن يتم التوصل لطريقة تحميل المقاطع ليستفيد منه الجميع.


الحقيقة يا أخى لقد تعلمت منك ومن الأخوة أشياء بهذا الموضوع جميلة حقيقة....
حضرتك لو كنت حملت المشروع المرفق فى أول رد لى فوق ستجد أن الموقع الموجود فى المشروع
هو موقع تحميل لقائمة تشغيل يوتيوب وانا بفضل الله جلبت منه الصور والاسماء ماعدا الرابط المباشر للتحميل..
جلب الرابط سهل بأمر الله لكن المشكل هو أنى ازاى اضيفه مع مشروعك لآقوم بالتحميل كل فيديو على حدا؟
هذا هو مربط الفرس.



RE: سوؤال بخصوص أداة FlowLayoutPanel - جميل - 05-01-20

صدقني لقد راجعت المشروع الذي ارفقته حضرتكم في المشاركة رقم 4 باسم (العرب.rar)

فلم اجد فيه الا هذا الرابط في TextBox1.Text
https://www.youtube.com/watch?v=kpAxUIF5OsY&list=PL-v9LD1yzS_UCoXowGb1jDuLAN4KlxyG8

وهذا الرابط هو لموقع YouTube
ولا يوجد رابط غيره

قد تكونوا وضعتم مرفق آخر غير الذي تتحدثون عنه.


RE: سوؤال بخصوص أداة FlowLayoutPanel - ابو روضة - 05-01-20

(05-01-20, 02:02 PM)جميل كتب : صدقني لقد راجعت المشروع الذي ارفقته حضرتكم في المشاركة رقم 4 باسم (العرب.rar)

فلم اجد فيه الا هذا الرابط في TextBox1.Text
https://www.youtube.com/watch?v=kpAxUIF5OsY&list=PL-v9LD1yzS_UCoXowGb1jDuLAN4KlxyG8

وهذا الرابط هو لموقع YouTube
ولا يوجد رابط غيره

قد تكونوا وضعتم مرفق آخر غير الذي تتحدثون عنه.


يا حبيب قلبى انظر للويب براوزر ستجد فى url رابط الموقع
والتكست بوكس وضعت زر لها على أساس حين الولوج للموقع بضغط على أول زر كى يضع ما بالتكست بوكس داخل الموقع
ومن ثم يقوم بفرد كل الروابط بالصور..
وبالزر الاخر المكتوب عليه روابط الصور حين الضغط عليه سيجلب الاسماء والصور معا



RE: سوؤال بخصوص أداة FlowLayoutPanel - جميل - 05-01-20

بحثت عن الويب براوزر فلم أجده على الفورم،
وفي الآخر، اتضح أنه خارج إطار الفورم، لهذا لم أراه،

لكن اين كود جلب رابط تحميل المقطع؟


RE: سوؤال بخصوص أداة FlowLayoutPanel - ابو روضة - 05-01-20

(05-01-20, 02:25 PM)جميل كتب : بحثت عن الويب براوزر فلم أجده على الفورم،
وفي الآخر، اتضح أنه خارج إطار الفورم، لهذا لم أراه،

لكن اين كود جلب رابط تحميل المقطع؟

هذا كود جلب الروابط لكن كنت عاملو وقتها بأنه يجلبها داخل الليست بوكس
لكن اريده بهذا المشروع كل رابط يكون مخفى بجوار صورته ويظهر فقط الاسم

PHP كود :
 Dim input As HtmlElementCollection
        input 
WebBrowser1.Document.GetElementsByTagName("a")
 
       For Each item As HtmlElement In input
            If item
.GetAttribute("href").Contains("downloadplaylist"Then
                ListBox1
.Items.Add(item.GetAttribute("href"))
 
           End If
 
       Next item 

وأعتقد أن المغزى كله بكودك هذا

إقتباس :
كود :
                   Dim vid As String = Regex.Match(src(i), "http://i.ytimg.com/vi/(.+?)/hqdefault.jpg").Groups(1).Value
                    uc.Tag = "https://www.youtube.com/embed/" & vid & "/?autoplay=1&rel=0"
                    AddHandler uc.Button1.Click, AddressOf Play_Click 

فكودك  لتشغيل المقطع فأتمى يكون لتحميل المقطع 



RE: سوؤال بخصوص أداة FlowLayoutPanel - ابو روضة - 07-01-20

جلست أفكر مع نفسى وقولت لماذا أعقدها على نفسى ففعلت الأتى:-
قولت مادام حينما أضغط على الزر الموجود بالصورة لآشاهد المقطع فهنا أقدر أن اسحب الرابط
والأسم من الويب براوزر وأضع كلاً منهم داخل تكست بوكس وبالفعل فعلت هذا بهذا الكود 

كود :
'جلب الاسم
       Dim s As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("span")
       For Each a As HtmlElement In s
           If a.GetAttribute("id") = ("eow-title") Then
               
               TextBox3.Text = (a.GetAttribute("title"))
           End If
       Next
       'جلب الرابط
       Dim d As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("video")
       For Each a As HtmlElement In d
           If a.GetAttribute("className") = ("video-stream html5-main-video") Then
               TextBox2.Text = (a.GetAttribute("src"))
           End If
       Next


ثم وضعت زر للتحميل وبالفعل إكتملت المهمة وأنتهى الموضوع

كود :
Download = New WebClient
       Download.DownloadFileAsync(New Uri(TextBox2.Text), My.Computer.FileSystem.SpecialDirectories.Desktop + "\" + CleanFileName(TextBox3.Text) + ".mp4")



وكانت النتيجة




وكل الشكر للأخ المميز عبود والأخ الجميل جميل والأخ الغالى trakktour