بدى طريقة اضيف احداث مختلفة لكل link label فى المثال التالى
كود :
Dim aa As Integer = 0
For a As Integer = 1 To 3
Dim li As New LinkLabel
aa = aa + 20
li.Location = New Point(10, 10 + aa)
li.Text = "li" + a.ToString
Controls.Add(li)
Next
من الكود السابق هيظهر 3 link label
عايز احط موقع مختلف لكلlink labe لما ادوس على كل link labe
يعنى لو دست على لنك الاول يودينى موقع
ولو دست على اللنك الثانى يودينى موقع مختلف
23-08-16, 07:16 AM (آخر تعديل لهذه المشاركة : 23-08-16, 07:42 AM {2} بواسطة سعود.)
PHP كود :
Public Class Form1
Dim links As New List(Of String) Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ListBox1.Items.Add("منتدى فيجوال بيسك لكل العرب") links.Add("http://vb4arb.com")
ListBox1.Items.Add("الفريق العربي للبرمجة") links.Add("http://arabteam2000-forum.com/")
ListBox1.Items.Add("المحيط العربي للبرمجة") links.Add("http://www.arabmoheet.net")
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim p As Integer = 0 For a = 0 To ListBox1.Items.Count - 1 Dim lnk As New LinkLabel lnk.Cursor = Cursors.Hand With lnk .Text = ListBox1.Items.Item(a).ToString .Top = p .Width = Panel1.Width End With Panel1.Controls.Add(lnk) p += lnk.Height AddHandler lnk.Click, AddressOf gotourl
Next End Sub Private Sub gotourl(sender As Object, e As EventArgs) MsgBox(links(ListBox1.Items.IndexOf(sender.text)))
Process.Start(links(ListBox1.Items.IndexOf(sender.text))) End Sub End Class
تحديث
بدل حدث الزر بهذا
PHP كود :
Dim p As Integer = 0 For a = 0 To ListBox1.Items.Count - 1 Dim lnk As New LinkLabel lnk.Cursor = Cursors.Hand With lnk .Text = ListBox1.Items.Item(a).ToString .Top = p .AutoSize = True End With Panel1.Controls.Add(lnk) p += lnk.Height AddHandler lnk.Click, AddressOf gotourl Next
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الصراحة مافهمت من مشروعك شي
السؤال شكل والمشروع شكل ثاني
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
23-08-16, 01:34 PM (آخر تعديل لهذه المشاركة : 23-08-16, 02:33 PM {2} بواسطة سعود.)
ممتاز الحين الفكرة اتضحت.
لكن مستغرب مشروعك الفورم Form1 مافيه الا زر واحد والغريب ان حدث Form1_load فيه اكواد ولم يظهر اي خطا بسبب عدم وجود الادوات.
شوف المرفق مثال بسيط جدا
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
(28-08-16, 12:13 AM)test123 كتب : الف شكر اخى
وهوا المطلوب
بس ما فى طريقة اضيف احداث على link
فى المثال العندى ؟
العفو
المشكلة انو مش فاهم مثالك احسو ملخبط.
لو امكن تعمل واحد جديد وتركز شوية على الفكرة المهمة وتسيب الافكار التانية.
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
حاولت على السريع بس تحتاج شوي تفكير عمل حدث كلك لكن المشكلة ياخذ اخر قيمة من الروابط
ولو انك تستخدم اي اداة جاهزة مثلا ليست او ليست فيو كان افضل لو فرضنا صار عدد الروابط خمس مية كيف راح يكون شكل الفورم؟
PHP كود :
Imports System.Data.OleDb Imports System.IO
Public Class Form1 Public con As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\db.accdb") Dim li As LinkLabel Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim cmd As New OleDbCommand Dim a As String
cmd = New OleDbCommand("select max(id) from test ", con) con.Open() a = cmd.ExecuteScalar
'ــــــــــــــــــــــــــــــــــــــــــــــ
'وهوارقم صفر a1حلقة تكرارية تبداء من 'فى قاعدىة البيانات idوهوا اخر رقم فى حقل a تنتهى عند For a1 As Integer = 0 To a - 1 li = New LinkLabel 'link على انها li الاعلان عن
'من خللو بستطيع وضع مسافات بين كل لنك فى مرحلة التشغيل int الاعلان عن Dim int As Integer int = int + 50
li.Location = New Point(10, 0 + int - 30) li.Text = a1 Controls.Add(li)
'ادراج قيمة كل لينك Dim dtp As New OleDbDataAdapter("select * from test ", con) Dim ds As New DataSet dtp.Fill(ds, "ur") li.Text = ds.Tables(0).Rows(a1).Item(1)
AddHandler li.Click, AddressOf HandleDynamicButtonClick Next 'ــــــــــــــــــــــــــــــــــــ End Sub
'المطلوب لما ادوس على اى لنك يودينى على الموقع
Private Sub HandleDynamicButtonClick(ByVal sender As Object, ByVal e As EventArgs) Dim btn As LinkLabel = DirectCast(sender, LinkLabel) Process.Start(li.Text) End Sub
End Class
سبحان الله والحمدللهولا إله إلا الله والله أكبر
اللهم اغْفِرْ لِلمؤمنين والمؤمنات والمسلمين والمسلمات الأحياء منهم والأموات