السلام عليكم
ان شاء الله سوف اقوم بعمل مجموعة هائلة من الاكواد والمشاريع المصغرة عسى ان تحقق الفائدة لكم
الغاية من هذا المثال هو كيفية انشاء ادوات وقت التنفيذ واضافة الاحداث لها (Events) عن طريق الكود
وهذا هو الكود
المشروع بلغة VB.net 2015كود HTML:Public Class Form1 Public Const WM_NCLBUTTONDOWN = &HA1 Public Const HTCAPTION = 2 Private TextBox(10) As TextBox Private Button(10) As Button Dim numberOfButtons As Integer Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim newbox As TextBox For i As Integer = 1 To 10 newbox = New TextBox newbox.Size = New Drawing.Size(100, 20) 'ضبط خاصية الحجم newbox.Location = New Point(130, 10 + 25 * (i - 1)) ' ضبط خاصية الموقع newbox.Name = "TextBox" & i ' الاسم البرمجي newbox.Text = newbox.Name ' الاسم الظاهر الكابشن AddHandler newbox.MouseDown, AddressOf TextBox_MouseDown ' هذه مهمة جداً وهي اضافة الحدث واعطاء اسم للبروسجير الذي سينفذ الكود المطلوب TextBox(i) = newbox Me.Controls.Add(newbox) ' Next ' نفس الشرح في الاكواد السابقة ينطبق على هذه الاكواد ولكن هذه خاصة بازرار الامر Dim Newbtn As Button For i As Integer = 1 To 10 Newbtn = New Button Newbtn.Size = New Drawing.Size(100, 20) Newbtn.Location = New Point(10, 10 + 25 * (i - 1)) Newbtn.Name = "Button" & i Newbtn.Text = Newbtn.Name AddHandler Newbtn.MouseDown, AddressOf NewButton_MouseDown Button(i) = Newbtn Me.Controls.Add(Newbtn) Next End Sub Friend Sub TextBox_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) ' هذا الاجراء خاص بمكانية تحريك التكسات بوكس بالزر الايسر للماوس ولاحظ هو Friend sub For i = 1 To 10 If e.Button = MouseButtons.Left Then TextBox(i).Capture = False Dim msg As Message = Message.Create _ (TextBox(i).Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero) Me.DefWndProc(msg) End If Next i End Sub Friend Sub NewButton_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) ' هذا الاجراء خاص بمكانية تحريك ازرار الامر بالزر الايسر للماوس ولاحظ هو Friend sub For i = 1 To 10 If e.Button = MouseButtons.Left Then Button(i).Capture = False Dim msg As Message = Message.Create _ (Button(i).Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero) Me.DefWndProc(msg) End If Next i End Sub End Class
لتحميل المشروع من هنا