Farbe konvertieren

  • VB.NET
  • .NET (FX) 4.0

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von razzzer530i.

    Farbe konvertieren

    Moin,

    ich möchte gerne eine bestimmte html-Farbe in vb verwenden.
    Dazu habe ich mir folgendes gebastelt:

    VB.NET-Quellcode

    1. Public Function convertcolor(ByVal htmlColor As String)
    2. Dim myColor As Color = ColorTranslator.FromHtml(htmlColor)
    3. Return 0
    4. End Function


    Rufe das Ganze dann mit

    VB.NET-Quellcode

    1. ovalshape1.backcolor=convertcolor("#0066cc")

    auf.

    Option Strict sagt mir, dass es keine implizierte Konvertierung von Objekt in Color zulässt.
    Ich verstehe nicht so ganz wieso. Und wie ich das übergehen kann.

    Danke schonmal im Voraus :)

    EDIT:

    Wenn ich es so schreibe:

    VB.NET-Quellcode

    1. Dim htmlColor As String = "#0066cc"
    2. Dim myColor As Color = ColorTranslator.FromHtml(htmlColor)
    3. Me.OvalShape1.BackColor = myColor

    wird es akzeptiert. ?
    ~Wir leben zwar alle unter dem gleichen Himmel, aber es haben nicht alle den gleichen Horizont~

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „razzzer530i“ ()

    "Option Strict On" erfordert, dass alle Funktions-, Eigenschafts- und Operatordeklarationen eine As-Klausel enthalten.

    VB.NET-Quellcode

    1. Public Function convertcolor(ByVal htmlColor As String) As Color
    2. Return ColorTranslator.FromHtml(htmlColor)
    3. End Function


    msdn.microsoft.com/de-de/library/97f49yhb(v=vs.100).aspx
    And i think to myself... what a wonderfuL World!

    us4711 schrieb:

    Was soll das return 0 in Zeile 3 von Post#1 bewirken?

    Da die Funktion unter Option Strict nicht in allen Codezeilen einen Wert zurückgibt, konnte ich diesen Hinweis mit return 0 vorerst abfangen. Die perfekte lösung wurde mir ja so eben geliefert. Vielen Dank Leute
    ~Wir leben zwar alle unter dem gleichen Himmel, aber es haben nicht alle den gleichen Horizont~

    razzzer530i schrieb:

    konnte ich diesen Hinweis mit return 0 vorerst abfangen
    Na ja, aber die Funktion gibt dann immer 0 zurück, und niemals einen Color-Wert.
    Über die erforderliche Typzuweisung bict Du ja weiter oben bereits informiert worden.

    razzzer530i schrieb:

    nicht in allen Codezeilen einen Wert zurückgibt

    Aber es wird doch nur in EINER Codezeile ein Wert zurückgegebn, nämlich in Zeile 3 mit Return 0