7 votos

¿Cómo puedo agregar una Notebook a una Caja en una VBox?

He creado una caja vacía en Glade para añadir un bloc de notas. La razón por la que no soy la adición de la real Notebook en Glade es porque he oído que no se puede agregar páginas a un bloc de notas hecho en Glade.

Así, en Glade he creado una Caja en una ranura vacía en una VBox. El código que estoy corriendo es:

self.box = self.builder.get_object("box")

self.subjects = Gtk.Notebook()
self.box.add(self.subjects)

No sucede nada al momento de ejecutar, excepto estas advertencias, que creo que acaba de ocurrir de todos modos:

/usr/lib/python2.7/dist-packages/gi/overrides/Gtk.py:391: Warning: g_object_set_property: construct property "type" for object `Window' can't be set after construction
Gtk.Window.__init__(self, type=type, **kwds)
/usr/lib/python2.7/dist-packages/gi/overrides/Gtk.py:391: Warning: g_object_set_property: construct property "type" for object `NotetakerWindow' can't be set after construction
Gtk.Window.__init__(self, type=type, **kwds)

10voto

turtle wins Puntos 51

Aquí un ejemplo en el que ha de contexto

from gi.repository import Gtk

class Handler:
    def onDeleteWindow(self, *args):
        Gtk.main_quit(*args)

    def addNotebookClick(self, *args):
        vbox = builder.get_object("attachtome")
        mynote = builder.get_object("notebook1")
        temp = Gtk.Box()
        mynote.reparent(temp)
        vbox.pack_start(temp, expand=False, fill=False, padding=0)
        window.show_all()

builder = Gtk.Builder()
builder.add_from_file("howtoaskaprogrammingquestion.glade")
builder.connect_signals(Handler())
window = builder.get_object("window1")
window.show_all()

Gtk.main()

Funciona con este archivo glade

Se proporciona esta funcionalidad: enter image description here

Esto también funciona, si usted está utilizando su propio ordenador Portátil. Tenga en cuenta que al ejecutar el ejemplo puede ver un ligero cambio en la geometría de la ventana(el objeto que se añade), pero no parece representar porque no tiene ningún tipo de fichas todavía.

from gi.repository import Gtk
class Handler:
    def onDeleteWindow(self, *args):
        Gtk.main_quit(*args)

    def addNotebookClick(self, *args):
        vbox = builder.get_object("attachtome")
        mynote = Gtk.Notebook()
        #mynote = builder.get_object("notebook1")
        #temp = Gtk.Box()
        #mynote.reparent(temp)
        vbox.pack_start(mynote, expand=False, fill=False, padding=0)
        window.show_all()

builder = Gtk.Builder()
builder.add_from_file("howtoaskaprogrammingquestion.glade")
builder.connect_signals(Handler())
window = builder.get_object("window1")
window.show_all()

Gtk.main()

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X