Seite 1 von 1

gtkTable: Zeile einfärben

Verfasst: Dienstag 7. Juli 2009, 16:36
von Lupurus
Hallo,

in meinem derzeitigen Programm muss der User eine Reihe von Schritten abarbeiten. Die erforderlichen Widgets habe ich in eine Table gepackt. Nun kam mir der Gedanke - um hervorzuheben, wo man sich gerade befindet - jeweils eine Zeile in der Table farblich zu hinterlegen.

Jetzt meine Frage: Ist es überhaupt möglich, eine komplette Zeile einzufärben, ohne dass die Widgets darin auch bemalt werden? Wenn ja, wie?

Schöne Grüße,
Lupurus

Verfasst: Dienstag 7. Juli 2009, 16:53
von Barabbas
Ich habe das jetzt schon länger nicht mehr gemacht, aber google hat das hier empfohlen: http://faq.pygtk.org/index.py?req=edit& ... 13.031.htp

Vielleicht hilft es ja ;)

Daniel

Verfasst: Dienstag 7. Juli 2009, 17:03
von Lupurus
Ich hab doch kein Treeview, sondern eine Table, das ist was anderes ;) Wüsste nicht, wie man das Code-Bsp. übertragen könnte, aber trotzdem danke!

Verfasst: Dienstag 7. Juli 2009, 17:42
von Leonidas
Wenn du ein Minimalbeispiel bereitstellst, findet sich vielleicht jemand der da mal reinschaut. So habe ich persönlich recht wenig Lust mir ein ganzes Programm selbst zusammenzubauen um festzustellen ob und wie es geht und das geht anderen sicher ähnlich.

Verfasst: Dienstag 7. Juli 2009, 17:45
von Barabbas
entschuldige, irgendwie... war ich in Gedanken.

Ich kann mir nicht vorstellen, dass du eine Tabelle auf diese Art einfärben kannst. Du kannst dich ja mal von hier durch die Widgets arbeiten, von denen gtk.Tables abgeleitet werden - aber ich glaube eher nicht.

Oh, eine sehr hässliche Idee hätte ich doch: Man könnte das Widget aus der Tabelle lösen, in ein Frame packen, diesen einfärben und in die Tabelle packen. Damit hättest du einen entsprechenden Effekt - allerdings sehr teuer und ibäh ;)

Alternativ könnte man auch mit einem gtk.Layout arbeiten. Oder eine zusätzliche Spalte in der Tabelle (als erste Spalte), in der du jeweils passend einen Pfeil einblendest, wenn die entsprechende Zeile bearbeitet werden soll - das wäre wahrscheinlich die beste Lösung.

Verfasst: Mittwoch 8. Juli 2009, 17:22
von Lupurus
Hallo,

danke für die schnellen Antworten.
Ich hatte hier im Forum noch ein Bsp. gefunden, um einen Button einzufärben. Damit habe ich es zunächst versucht und musste feststellen, dass es nicht viel gebracht werden, da die in der Table liegenden Widgets nur eine seltsame farbige Umrandung bekamen, weil sie nicht wirklich "durchsichtig" waren.

Inzwischen, da mir dieses Feature nicht allzuwichtig ist, habe ich das Problem dadurch gelöst, dass ich die Widgets verstecke und dann Stück für Stück wieder anzeigen lasse.

Trotzdem dankeschön

Verfasst: Mittwoch 8. Juli 2009, 21:38
von ms4py
Statt die Widgets kannst zu verstecken könntest du sie auch deaktivieren mit set_sensitive, vllt wäre das auch noch eine Option für dich in diesem Fall.