set_focus() sets the focus to the child widget passed as the parameter. The child must have the flag GTK_CAN_FOCUS set in order to be allowed focus. Some widgets are created with this flag already set (including the GtkButton widget), others are not.
See also: GtkWidgetFlags, GtkWidget, set_flags() .