Python – CellRendererText in GTK+ 3
Gtk.CellRenderer widgets are used to display information within widgets such as the Gtk.TreeView or Gtk.ComboBox. Below are the seven Gtk.CellRenderer widgets used for different purposes.
- Gtk.CellRendererText
- Gtk.CellRendererToggle
- Gtk.CellRendererPixbuf
- Gtk.CellRendererCombo
- Gtk.CellRendererProgress
- Gtk.CellRendererSpinner
- Gtk.CellRendererSpin
- Gtk.CellRendererAccel
In this tutorial, we are going to discuss Gtk.CellRendererText. A Gtk.CellRendererText renders a given text in its cell, using the font, color, and style information provided by its properties.
Text in Gtk.CellRendererText widget can be make editable by
cell.set_property("editable", True)
Example :
Python3
from gi.repository import Gtk import gi gi.require_version( "Gtk" , "3.0" ) class CellRendererTextWindow(Gtk.Window): def __init__( self ): Gtk.Window.__init__( self , title = "Beginner For Beginner" ) self .set_default_size( 400 , 400 ) self .liststore = Gtk.ListStore( str , str ) self .liststore.append( self .liststore.append( self .liststore.append( self .liststore.append( treeview = Gtk.TreeView(model = self .liststore) renderer_text = Gtk.CellRendererText() column_text = Gtk.TreeViewColumn( "Text" , renderer_text, text = 0 ) treeview.append_column(column_text) renderer_editabletext = Gtk.CellRendererText() renderer_editabletext.set_property( "editable" , True ) column_editabletext = Gtk.TreeViewColumn( "Editable Text" , renderer_editabletext, text = 1 ) treeview.append_column(column_editabletext) renderer_editabletext.connect( "edited" , self .text_edited) self .add(treeview) def text_edited( self , widget, path, text): self .liststore[path][ 1 ] = text win = CellRendererTextWindow() win.connect( "destroy" , Gtk.main_quit) win.show_all() Gtk.main() |
Output :