Hier zeige ich euch mal, wie ihr in VB 2010 einen eigenen Button erstellen könnt.
Zuerst erstellt ihr ein neues Projekt, undzwar eine Klassenbibliothek.
Die könnt ihr nennen, wie ihr möchtet.
Nun fügt ihr die Verweise:
Code:
System.Windows.Forms.Dll
System.Drawing
..hinzu.
Diese findet ihr normal in dem Ordner:
"
Code:
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0
"
Nun schreibt ihr da wo Class1 steht einen belibigen Namen eures Controls hin.
z.B "Button2"
Als nächstes importiert ihr:
Code:
Imports System.Windows.Forms
Imports System.Drawing
Imports System.Drawing.Drawing2D
und davor schaltet ihr:
Jetzt schreibt ihr in eure Klasse:
Code:
Inherits System.Windows.Forms.Button
Und gebt damit eurem Control den "Status" und die Funktion eines Buttons.
Nun machen wir uns 3 Properties:
Code:
Public Property Color_1 As Color = Color.Red
Public Property Color_2 As Color = Color.Red
Public Property Text_1 As String = "Hallo"
Damit fügen wir in unserem Eigenschaftenfenster Die Funktionen:
Code:
Color_1
Color_2
Text_1
...ein
Nun schreiben wir einen Sub, in dem wir mit GDI zeichnen:
Code:
Protected Overrides Sub onPaint(ByVal e As PaintEventArgs)
schreiben wir als Erstes.
Dann bestimmen wir die Größe unseres Objekts:
Code:
Dim größe As New Rectangle(0, 0, Me.Width, Me.Height)
Anschließend Optionen für den Text:
Code:
Dim fnt As New Font("Arial", 10)
Danach wieder etwas für den Text:
Code:
Dim sz As SizeF = e.Graphics.MeasureString(Text_1, fnt)
Nun die Umrandung des Buttons:
Code:
Dim pn As New Pen(New SolidBrush(Color.Black), 2)
Jetzt lassen wir uns das Ganze hiermit anzeigen:
Code:
Using lgb As New LinearGradientBrush(größe, Color_1, Color_2, LinearGradientMode.BackwardDiagonal)
e.Graphics.FillRectangle(lgb, größe)
e.Graphics.DrawRectangle(pn, 0, 0, Me.Width, Me.Height)
e.Graphics.DrawString(Text_1, fnt, Brushes.Black, (Me.Width - sz.Width) / 2, (Me.Height - sz.Height) / 2)
End Using
Zuerst sagen wir, dass wir einen Farbverlauf wollen. Bei keinem Farbverlauf einfach:
Code:
Color_1 = Color.Black
Color_2 = Color_1
Dann füllen wir ein Rechteck mit diesem Farbverlauf und wählen dabei die Größe und Koordinaten des Buttons.
Anschließend zeichen wir den Rand mit quasi dem selben Schema, zum Schluss wird der Text in die Mitte des Buttons gesetzt. Fertig! Im OnPaint Event kann übrigends ganz viel mit GDI gezeichnet werden...Runde Buttons etc...
Nun wollt ihr ja auch sehen, wie es aussieht. Klickt dafür einmal auf "debuggen". Es kommt ein Fehler, ihr Klickt auf OK und fügt eurem Projekt eine WindowsForm hinzu. Ihr geht in den Form Designer und guckt in die Toolbox. Normal müsstet Ihr auf den ersten Blick euer Control beim gegebenen Namen finden. Einfach auf die Form ziehen und im Eigenschaftenfenster runterscrollen, bis ihr Color_1 etc. findet. Dort könnt ihr nun auswählen, was ihr möchtet.
Zum erstellen einer .DLL geht ihr auf "Erstellen" -> "Projektname erstellen" Und findet eure .DLL nun in der regel bei:
Code:
Visual Studio 2010\Projects\Button_1\Button_1\bin\Debug
Nun könnt ihr eure DLL in eine WindowsFormsAnwendung einbinden, indem ihr in die Toolbox einen Linksklick macht, Auf "ToolboxElemente auswählen" klickt, eure DLL auswählt und das Gnaze bestätigt. Nun findet ihr euren eigenen Button in der ToolBox und könnt ihn wie jeden anderen Button benutzen.
Hier eine von vielen Möglichkeiten:
Ich hoffe ich konnte euch etwas helfen

Lasst ein "Thanks" da, wenn nicht, auch egal