If the grid is large, you can also consider GtkTreeView .
It can display trees as grids and supports rectangular selection. Cells can display text, numbers, and simple widgets such as buttons, radio buttons, options menus, progress bars, etc. It works well even on large data sets (many thousands of rows) and has nice features like sorting columns, etc.
The API is quite complex, however :-( This is the complete MVC thing and makes you think a little that it works well.
Here is a sample code in gtk-demo: see a demo of "Editable Cells" in the "Tree View" section.
jrgc source share