2011-08-19 13 views
7

Mam ubi GTK, który ma gtkVBox, który pobiera treść gtkHbox zawierającą dynamicznie dodaną do niego, jak działa użytkownik.pygtk zmiana koloru tła widżetu gtkHBox

UI jest coraz zatłoczone i trudno powiedzieć, co hbox składniki należą do (powtarzają.)

chciałbym zmienić kolor tła z gtkHboxes więc na przemian jaśniejszym i ciemniejszym kolorem dla każdy.

Zasadniczo tworzę dynamiczną tabelę pól złożonych, w których każdy wiersz reprezentuje obiekt. Teraz muszę posegmentować wiersze, ponieważ są one złożone i trudne do wykonania.

Dzięki, Dave.

Odpowiedz

13

Zgodnie z docs, ponieważ hbox "nie ma skojarzonego okna", nie można bezpośrednio modyfikować koloru tła. Dokumenty sugerują, aby je zawinąć i pole zdarzenia. Działa to całkiem dobrze:

hbox = gtk.HBox() 
eb = gtk.EventBox()  
eb.add(hbox) 
eb.modify_bg(gtk.STATE_NORMAL, gtk.gdk.Color(red=65535))