Seite 1 von 1

[gelöst]RGB Daten in Variable

Verfasst: Do 18. Mai 2017, 22:08
von kl_ha
Hallo

Gibt es eine Möglichkeit die RGB Werte in eine Variable zu speichern und in einer Funktion wieder auszulesen.
Als String funktioniert es nicht, weil die RGB Werte drei Integer Werte sind.
Aber auch als Integer bekomme ich eine Fehlermeldung z.B RGB(219,253,255)
Ich denke das die Komma die Probleme bereiten,
Hat das schon Irgend jemand dieses Problem gehabt und gelöst?

Gruß
Klaus

Re: RGB Daten in Variable

Verfasst: Do 18. Mai 2017, 22:27
von karolus
Hallo

Welches Problem?
(in Basic gibts die Function rgb(… , … , …), die funktioniert auch so wie du angibst.)

in LO-Calc gibts inzwischen die Funktion FARBE(… ; … ; …) selbstverständlich mit Semicolon-getrennter Argumentliste wie üblich in Calc.

Re: RGB Daten in Variable

Verfasst: Fr 19. Mai 2017, 16:04
von F3K Total
Hallo,
man kann in Starbasic eigene Datentypen erzeugen, etwa so:

Code: Alles auswählen

Type Farbe_RGB
    ROT As Integer
    GRUEN As Integer
    BLAU As Integer
End Type

Sub ExampleCreateNewType
    Dim Farbe1 As Farbe_RGB
    Farbe1.ROT = 122
    Farbe1.GRUEN = 0
    Farbe1.BLAU = 255
    PrintFarbe(Farbe1)
End Sub

Sub PrintFarbe(x)
    msgbox "Rot: " & x.ROT & CHR(13) & "Grün: " & x.GRUEN & CHR(13) &  "Blau: " & x.BLAU
End Sub
Siehe auch OpenOffice.org Macros Explained von Andrew Pitonyak, deutsche Übersetzung von Volker Lenhardt
Kapitel 3.3.8. Eigene Datentypen erzeugen
Gruß R

Re: RGB Daten in Variable

Verfasst: Fr 19. Mai 2017, 17:16
von kl_ha
Hallo

Danke für eure Antworten.
Habe das mit das mittels Farbe in Hexadezimal Zahlen gelöst.

Code: Alles auswählen

sheet.getCellRangeByPosition(startSpalte,startZeile,anzahlSpalten,startZeile).Cellbackcolor = "&H" & colorAsHex
Type Farbe_RGB
ROT As Integer
GRUEN As Integer
BLAU As Integer
End Type

Sub ExampleCreateNewType
Dim Farbe1 As Farbe_RGB
Farbe1.ROT = 122
Farbe1.GRUEN = 0
Farbe1.BLAU = 255
PrintFarbe(Farbe1)
End Sub

Sub PrintFarbe(x)
msgbox "Rot: " & x.ROT & CHR(13) & "Grün: " & x.GRUEN & CHR(13) & "Blau: " & x.BLAU
End Sub
Wieder was gelernt


Gruß
Klaus