vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 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
Beispiel für einen Pen-Dialog (Teil 3) 
Autor: Manfred X
Datum: 02.11.14 06:40

    Private Sub cboLineStyle_DrawItem(sender As Object, _
        e As System.Windows.Forms.DrawItemEventArgs) Handles _
        cboPenStyle.DrawItem
 
        If e.Index = -1 Then Exit Sub
 
        e.DrawBackground()
 
        Using pn As New Pen(GetForecolor(e.State), 4)
            Dim ypos% = cboPenStyle.ItemHeight \ 2
            pn.DashStyle = CType(e.Index, DashStyle)
            With e.Bounds
                e.Graphics.DrawLine _
                    (pn, .X + 4, .Y + ypos, .Width - 8, .Y + ypos)
            End With
        End Using
    End Sub
 
 
    Private Sub cboPenAlignment_DrawItem(sender As Object, _
            e As System.Windows.Forms.DrawItemEventArgs) _
          Handles cboPenAlignment.DrawItem
 
        If e.Index = -1 Then Exit Sub
 
        e.DrawBackground()
 
        Using br As New SolidBrush(GetForecolor(e.State))
            With e.Bounds
                'If e.Index = 1 Then Stop
 
                e.Graphics.DrawString _
                    (cboPenAlignment.Items(e.Index).ToString, _
                     e.Font, br, e.Bounds.Location)
            End With
        End Using
    End Sub
 
 
    Private Sub btnOK_Click(sender As Object, _
        e As System.EventArgs) Handles btnOK.Click
 
        Dim col As Color = Color.Black
 
        If cboPenColor.SelectedIndex >= 0 Then
            col = Color.FromName(cboPenColor.SelectedItem.ToString)
        End If
 
        _pen = New Pen(col, _
                         CInt(cboPenWidth.SelectedItem.ToString))
 
        _pen.DashStyle = CType(cboPenStyle.SelectedIndex, DashStyle)
        _pen.Alignment = CType(cboPenAlignment.SelectedIndex, PenAlignment)
    End Sub
 
#End Region
 
    Private Function GetForecolor(ByVal state As DrawItemState) As Color
 
        If DrawItemState.Selected = (state And DrawItemState.Selected) Then
            Return Color.White
        Else
            Return Color.Black
        End If
    End Function
End Class


Beitrag wurde zuletzt am 02.11.14 um 06:50:02 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Combobox für Linienstärken1.631Bazi01.11.14 19:34
Beispiel für einen Pen-Dialog (Teil 1)1.191Manfred X02.11.14 06:32
Beispiel für einen Pen-Dialog (Teil 2)1.172Manfred X02.11.14 06:38
Beispiel für einen Pen-Dialog (Teil 3)1.103Manfred X02.11.14 06:40
Anwendungsbeispiel für den Dialog1.154Manfred X02.11.14 06:42
Re: Combobox für Linienstärken1.109Bazi04.11.14 21:52
Re: Combobox für Linienstärken1.103Bazi11.11.14 20:49

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