vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 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: Farben speichern 
Autor: Manfred X
Datum: 07.11.11 03:42

Hallo!

Dieser Converter konvertiert "benannte Farben" anders
als über A-R-G-B definierte Farben.
Dim cc As New ColorConverter
Dim s1 As String = _
cc.ConvertToString(Color.Red) '--> "red"
Dim s2 As String = _
cc.ConvertToString(Color.FromArgb(Color.Red.ToArgb)) '--> "255, 0, 0"
 
'Der Rückgabe-Typ der Methode "ConvertFromString" ist Object.
Dim cl As Color = CType(cc.ConvertFromString(s1), Color)
Für eine einheitliche Speicherung in einer Text-Datei empfiehlt
sich deshalb bei benannten Farben die vorherige ToARGB-Umwandlung.


Eine besser lesbare Textausgabe bieten die MaX-Extensions
(Extensions verwendbar ab VB 2008, sonst als Funktionen aufrufen):
Dim s3 As String = Color.Red.ColorToText 'Farbe in Text wandeln
Dim col As Color = s3.TextToColor 'Text zurück in Farbe wandeln
 
'Optional kann ein erkärender Text mitgegeben werden: 
Dim s4 As String = Color.Yellow.ColorToText("Meine Farbe")
Man benötigt dafür folgendes Modul:
Option Strict On : Option Explicit On
Module modColorStuff
 
    Private Const Alpha As String = "Alpha: "
    Private Const Rot As String = "Rot: "
    Private Const Grün As String = "Grün: "
    Private Const Blau As String = "Blau: "
 
    <System.Runtime.CompilerServices.Extension()> _
    Public Function ColorToText(ByVal c As System.Drawing.Color, _
                       Optional ByVal ColorText As String = "") As String
 
        Dim icolortext As String = "", d As String = "   "
        If Not String.IsNullOrWhiteSpace(ColorText) Then _
           icolortext = ColorText.Trim
 
        icolortext &= d & Alpha & CStr(c.A) & d & _
            Rot & CStr(c.R) & d & Grün & CStr(c.G) & d & Blau & CStr(c.B)
        Return icolortext
    End Function
 
    <System.Runtime.CompilerServices.Extension()> _
    Public Function TextToColor(ByVal Colortext As String) As _
    System.Drawing.Color
        Dim retcolor As System.Drawing.Color = Color.Black
        Try
          With Colortext
            Dim alp As Integer = _
            CByte(.Substring(.IndexOf(Alpha) + Alpha.Length, 3))
            Dim red As Integer = _
            CByte(.Substring(.IndexOf(Rot) + Rot.Length, 3))
            Dim green As Integer = _
            CByte(.Substring(.IndexOf(Grün) + Grün.Length, 3))
            Dim blue As Integer = _
            CByte(.Substring(.IndexOf(Blau) + Blau.Length))
 
            retcolor = Color.FromArgb(alp, red, green, blue)
          End With
        Catch
        End Try
        Return retcolor
    End Function
End Module
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Farben speichern3.854Ne kölsche Jung05.11.11 18:00
Re: Farben speichern3.310Manfred X05.11.11 19:11
Re: Farben speichern3.185Franki06.11.11 04:20
Re: Farben speichern3.145Manfred X07.11.11 03:56
Re: Farben speichern3.149Ne kölsche Jung06.11.11 11:53
Re: Farben speichern3.222Gizmo201106.11.11 20:12
Re: Farben speichern3.252Manfred X06.11.11 23:24
Re: Farben speichern3.150GPM07.11.11 01:29
Re: Farben speichern3.619Manfred X07.11.11 03:42
Re: Farben speichern3.225Ne kölsche Jung07.11.11 18:29
Re: Farben speichern3.086Manfred X07.11.11 18:34
Re: Farben speichern3.070Ne kölsche Jung07.11.11 20:04

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