RGBA Werte aus gtk.ColorSelectionDialog()

Programmierung für GNOME und GTK+, GUI-Erstellung mit Glade.
Antworten
Chrispy
User
Beiträge: 37
Registriert: Montag 10. September 2007, 22:43

hmm, ich würde gern die RGBA-Werte aus dem Farbauswahldialog auslesen,
get_current_color() gibt nur "<GdkColor at 0x86e0940>" aus,
damit kann ich so nichts anfangen, weiss jemand, ne Methode zum auslesen der
RGBA-Werte oder kennt jemand ein anderes Python Modul, mit dem ich sie
aus diesem gdk Wert errechnen kann?
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Die Farben bekommst du ja aus dem GdkColor heraus (.red, .blue, .green) und der Alpha Wert ist ein Property des Farbauswahlwidgets und kann mit get_current_alpha() ausgelesen werden.
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Chrispy
User
Beiträge: 37
Registriert: Montag 10. September 2007, 22:43

Sorry für die blöde Frage: aber wie? get_current_color() gibt ja "nur" "<GdkColor at 0x86e0940> aus und in der referenz finde ich keine ander möglichkeit, oder bin ich wirklich nur blind?
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Chrispy hat geschrieben:Sorry für die blöde Frage: aber wie? get_current_color() gibt ja "nur" "<GdkColor at 0x86e0940> aus und in der referenz finde ich keine ander möglichkeit, oder bin ich wirklich nur blind?
color = foo.get_current_color()
print "red", color.red
print "green", color.green
print "blue", color.blue

;)
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Chrispy
User
Beiträge: 37
Registriert: Montag 10. September 2007, 22:43

Code: Alles auswählen

red 47957
green 9122
blue 9122 
ok. aber ich brauch Werte zwischen 0 und 255 - wie stelle ich das an? - oder wie rechne ich um?
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Chrispy hat geschrieben:

Code: Alles auswählen

red 47957
green 9122
blue 9122 
ok. aber ich brauch Werte zwischen 0 und 255 - wie stelle ich das an? - oder wie rechne ich um?
Right shift um 8 bits ;)

Beispiel:

Code: Alles auswählen

print color.red >> 8
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Chrispy
User
Beiträge: 37
Registriert: Montag 10. September 2007, 22:43

8 Bits ... da hätte man auch drauf kommen können, Vielen Dank!
Antworten