Editierbare Zellen im Treeview mit Glade
Verfasst: Samstag 18. Januar 2020, 17:12
Hallo zusammen,
im Code gelingt es mir die Zellen meines Treeviews editierbar zu machen.
Mit Glade aber nicht.
Ich verstehe nicht warum.
im Code gelingt es mir die Zellen meines Treeviews editierbar zu machen.
Mit Glade aber nicht.
Ich verstehe nicht warum.
Code: Alles auswählen
#!/usr/bin/env python3
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
class App:
def __init__(self):
builder = Gtk.Builder()
builder.add_from_file("Codefragment.glade")
builder.connect_signals(self)
window = builder.get_object("TVFenster")
window.show_all()
self.list_store = builder.get_object("Liststore")
self.tree_view = builder.get_object("Treeview")
self.list_store.append(["irgendwas"])
renderer1 = builder.get_object("Renderer1")
# renderer1.get_property("editable") liefert false - was muss ich in Glade tun, damit es True liefert???
print(renderer1.get_property("editable"))
# Folgendes ist doch bestimmt nicht die einzige Möglichkeit, oder?
renderer1.set_property("editable", True)
print(renderer1.get_property("editable"))
@staticmethod
def on_tv_fenster_destroy(_widget):
Gtk.main_quit()
def main():
_app = App()
Gtk.main()
if __name__ == "__main__":
main()
Code: Alles auswählen
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.22.1 -->
<interface>
<requires lib="gtk+" version="3.20"/>
<object class="GtkListStore" id="Liststore">
<columns>
<!-- column-name spalte1 -->
<column type="gchararray"/>
</columns>
</object>
<object class="GtkWindow" id="TVFenster">
<property name="can_focus">False</property>
<signal name="destroy" handler="on_tv_fenster_destroy" swapped="no"/>
<child>
<placeholder/>
</child>
<child>
<object class="GtkTreeView" id="Treeview">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="model">Liststore</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<child>
<object class="GtkTreeViewColumn" id="spalte1">
<property name="resizable">True</property>
<property name="title" translatable="yes">column</property>
<property name="clickable">True</property>
<child>
<object class="GtkCellRendererText" id="Renderer1"/>
<attributes>
<attribute name="editable">0</attribute>
<attribute name="text">0</attribute>
</attributes>
</child>
</object>
</child>
</object>
</child>
</object>
</interface>