2012-01-04 6 views
8

En GTK2, un StatusBar era simplemente un contenedor simple como un HBox. Glade 3 (gtk3) ahora muestra este mensaje cuando intento añadir hijos a mi barra de estado:¿Cómo agrego hijos a una barra de estado en Glade3?

Widgets of type Status Bar need placeholders to add children.

¿Cuáles son marcadores de posición?

Prefiero construir la interfaz de usuario completamente en Glade, pero si eso ya no funciona, compilarlo en código también está bien. Estoy usando Python 3.2 y Gtk a través de GObject introspection.

Respuesta

6

En Gnome 3, las barras de estado ya no son contenedores; son más como montones de mensajes. Para mostrar un mensaje, obtener un identificador de contexto fresco y empujar el mensaje en la pila de mensajes asociados con la barra de estado:

context_id = statusbar.get_context_id("progress_message") 
statusbar.push(context_id, "Almost done...") 

o

statusbar.push(1, "Almost done...") 

Y para quitar el mensaje de nuevo, utilizar statusbar.pop(1). Por lo tanto, ya no es posible tener barras de progreso o imágenes en la barra de estado.

Ver también: GtkStatusbar at the Gnome Dev Center

Cuestiones relacionadas