Domanda

Sto appena iniziando a imparare Glade con pyGTK. Dato che Glade crea file XML invece del vero codice Python, c'è un buon modo per avviare un progetto con Glade e poi passarne di più o modificarlo?

Ci sono tempi o motivi per cui sarebbe preferibile codificarli tutti invece di iniziare con glade?

È stato utile?

Soluzione

Le GUI create con glade sono accessibili nel codice in due modi: libglade o gtkbuilder. Non posso commentare molto le differenze tra i due, tranne che gtkbuilder è più recente; ci sono molte pagine su google che mostrano come migrare da libglade a gtkbuilder.

Usando gtkbuilder, puoi creare il tuo oggetto GUI recuperandolo dal file XML usando gtkbuilder. Questo crea l'oggetto con tutte le impostazioni che hai impostato in Glade. Ora hai un oggetto GUI che puoi manipolare tramite la sua normale interfaccia.

builder = gtk.Builder()
builder.add_from_file(glade_path)
builder.connect_signals(self)

main_window = builder.get_object("main_window")
main_window.show()

text_box1 = builder.get_object("textbox1")
text_box1.set_text("enter your name")

La linea 3 mostra come sono collegati i gestori di segnale quando caricati dalla radura. In sostanza, cerca la funzione specificata per il segnale nell'interfaccia glade e collegata ad essa; se la funzione non viene fornita, verrà visualizzato un avviso sulla riga di comando.

Altri suggerimenti

Quanto sai di glade e pygtk? Glade crea file XML ma li carichi usando gtk.Builder in Python. Puoi facilmente modificare qualsiasi widget creato con Glade in Python. Leggi questi tutorial per capire come farlo meglio. Devi solo saperne di più su pygtk e glade e sarà ovvio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top