منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كيف يمكن اضاقة اداه من ملف dll
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
كيف يمكن اضاقة اداه من ملف dll
لو انشأت مشروع و فى الكلاس هذه الاكواد
كود :
Imports System.Windows.Forms
Imports System.Drawing

Public Class Tools
    Dim Form1 As New Form

    Public Function AddButton()
        Dim a As New Button
        Form1.Controls.Add(a)
        a.Size = New Size(180, 18)
        a.Location = New Point(20, 20)
        a.Show()
    End Function
End Class
فى المشروع الثانى
كود :
Public Class Form1
    Dim add As New ClassLibrary1.Tools

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        add.Addbutton()
    End Sub
End Class
و عملت build للمشروع و اضافة ملف dll الناتج عن المشروع فى مشورع جديد يوجد به فروم
كيف يتم اضافة الزر او الاداه فى المشروع الجديد ؟
نحمده ونصلي على رسوله الكريم

صنع الادوات يحتاج اولا توريث الفئة من ال control او من اي فئة فرعية (موروثة من ال control).
كود :
Public Class Class1
    inherts button

    Sub New()
        Size = New Size(180, 18)
    End Sub
End Class
ثم اضف الأداة من صندوق الأدوات أو من:
كود :
private withevents button1 as new class1

private sub form1_load(sender as object, e as eventargs) handles mybase.load
    controls.add(button1)
end sub

private sub button1_click(object sender, e as eventargs) handles button1.click
    messagebox.show("Done...")
end sub
(09-02-14, 07:44 PM)ربيع كتب : [ -> ]نحمده ونصلي على رسوله الكريم

صنع الادوات يحتاج اولا توريث الفئة من ال control او من اي فئة فرعية (موروثة من ال control).
كود :
Public Class Class1
    inherts button

    Sub New()
        Size = New Size(180, 18)
    End Sub
End Class
ثم اضف الأداة من صندوق الأدوات أو من:
كود :
private withevents button1 as new class1

private sub form1_load(sender as object, e as eventargs) handles mybase.load
    controls.add(button1)
end sub

private sub button1_click(object sender, e as eventargs) handles button1.click
    messagebox.show("Done...")
end sub

انا لا اقصد صنع اداه بل اقصد يتم اضافه الاداه من الادوات الموجوده فى قامة الادوات
لاكن بدل ادافه الكود فى حدث الفروم نستدعى من dll
نحمده ونصلي على رسوله الكريم

DLL:
كود :
Public Class Class1
    Public Sub AddButton(ByRef form As System.Windows.Forms.Form)
        Dim b As New System.Windows.Forms.Button()
        b.Size = New System.Drawing.Size(180, 18)
        b.Location = New System.Drawing.Point(20, 20)

        form.Controls.Add(b)
    End Sub
End Class

Form:
كود :
Public Class Form1

    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Dim b As New ClassLibrary1.Class1()
        b.AddButton(Me)
    End Sub
End Class
(09-02-14, 10:48 PM)ربيع كتب : [ -> ]نحمده ونصلي على رسوله الكريم

DLL:
كود :
Public Class Class1
    Public Sub AddButton(ByRef form As System.Windows.Forms.Form)
        Dim b As New System.Windows.Forms.Button()
        b.Size = New System.Drawing.Size(180, 18)
        b.Location = New System.Drawing.Point(20, 20)

        form.Controls.Add(b)
    End Sub
End Class

Form:
كود :
Public Class Form1

    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Dim b As New ClassLibrary1.Class1()
        b.AddButton(Me)
    End Sub
End Class
جزاك الله خير