vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: GroupBox Umrandung, Farbe ändern 
Autor: Tenschman
Datum: 01.03.06 23:06

So, hab jetzt den Code (sehr ausführlich):

Imports System
Imports System.Drawing

Public Class MyGroupbox : Inherits System.Windows.Forms.Panel
 
    Private _linewidth As Byte = 1
    Private _color As Color = Color.Black
    Private antialias As Boolean = True
    Private _myText As String
 
    Public Property LineWidth() As Byte
        Get
            Return _linewidth
        End Get
        Set(ByVal value As Byte)
            _linewidth = value
        End Set
    End Property
 
    Public Property Color() As Color
        Get
            Return _color
        End Get
        Set(ByVal value As Color)
            _color = value
        End Set
    End Property
 
    Public Property AntiAliasing() As Boolean
        Get
            Return antialias
        End Get
        Set(ByVal value As Boolean)
            antialias = value
        End Set
    End Property
 
    Public Property myText() As String
        Get
            Return _myText
        End Get
        Set(ByVal value As String)
            _myText = value
        End Set
    End Property
 
    Private Sub MyGroupbox_Paint(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.PaintEventArgs) Handles Me.Paint
        If antialias Then e.Graphics.SmoothingMode = _
        Drawing2D.SmoothingMode.AntiAlias
 
        'erst muss mal die Breite und Höhe des Textes ausgerechnet werden, 
        ' sonst is des ja kei richtige GroupBox
        Dim text_breite As Integer = e.Graphics.MeasureString(_myText, _
          Me.Font).Width
        Dim text_höhe As Integer = e.Graphics.MeasureString(_myText, _
        Me.Font).Height
 
        'Jetzt werden die Koordinaten der Endpunkte gerechnet
        'Zuerst links oben
        Dim links_oben As Point = New Point(0, 1 + Int(text_höhe / 2))
        'Jetzt der Punkt weiter rechts
        Dim links_oben2 As Point = New Point(3, 1 + Int(text_höhe / 2))
        'Hier soll der Text beginnen:
        Dim links_oben3 As Point = New Point(4, 1)
        'Eckpunkt oben
        Dim rechts_oben As Point = New Point(Me.Width - 1, 1 + Int(text_höhe / _
          2))
        'Ende des Textes
        Dim rechts_oben2 As Point = New Point(2 + text_breite, 1 + Int( _
          text_höhe / 2))
        'Eckpunkte unten
        Dim links_unten As Point = New Point(0, Me.Height - 1)
        Dim rechts_unten As Point = New Point(Me.Width - 1, Me.Height - 1)
 
        'Jetzt kommt das große Zeichnen
        e.Graphics.DrawLine(New Pen(_color, _linewidth), links_oben, _
          links_oben2)
        e.Graphics.DrawLine(New Pen(_color, _linewidth), rechts_oben, _
        rechts_oben2)
        e.Graphics.DrawLine(New Pen(_color, _linewidth), links_oben, _
        links_unten)
        e.Graphics.DrawLine(New Pen(_color, _linewidth), rechts_oben, _
        rechts_unten)
        e.Graphics.DrawLine(New Pen(_color, _linewidth), links_unten, _
        rechts_unten)
        e.Graphics.DrawString(_myText, Me.Font, Brushes.Black, links_oben3)
 
        'Padding bestimmen:
        Me.Padding = New System.Windows.Forms.Padding(1, 2 + text_höhe, 1, 1)
 
        'abschließen
        e.Dispose()
    End Sub
End Class

_______________
Meine HP: http://www.tenschman.de/

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
GroupBox Umrandung, Farbe ändern3.100Iced-T28.02.06 13:56
Re: GroupBox Umrandung, Farbe ändern2.528lighty01.03.06 08:41
Re: GroupBox Umrandung, Farbe ändern2.560Iced-T01.03.06 13:56
Re: GroupBox Umrandung, Farbe ändern3.240Wolf mit Schnul...01.03.06 14:27
Re: GroupBox Umrandung, Farbe ändern2.496lighty01.03.06 14:54
Re: GroupBox Umrandung, Farbe ändern2.461Iced-T01.03.06 19:47
Re: GroupBox Umrandung, Farbe ändern2.413Wolf mit Schnul...01.03.06 21:07
Re: GroupBox Umrandung, Farbe ändern2.554Tenschman01.03.06 21:46
Re: GroupBox Umrandung, Farbe ändern2.482Iced-T01.03.06 22:16
Re: GroupBox Umrandung, Farbe ändern2.803Tenschman01.03.06 22:19
Re: GroupBox Umrandung, Farbe ändern2.752Iced-T01.03.06 22:25
Re: GroupBox Umrandung, Farbe ändern2.472Tenschman01.03.06 22:35
Re: GroupBox Umrandung, Farbe ändern2.697Tenschman01.03.06 23:06
Re: GroupBox Umrandung, Farbe ändern2.445Tenschman01.03.06 23:07
Re: GroupBox Umrandung, Farbe ändern2.449Tenschman02.03.06 22:51

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel