GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come incorporare il contenuto di un Gtkaboutdialog in un widget Gtknotebook?

Sto scrivendo un'app Python basata su schede e non voglio che abbia finestre di dialogo pop-up aggiuntive.

Vorrei utilizzare il Gtk.AboutDialog funzionalità, ma non voglio che appaia come una finestra separata. Piuttosto, vorrei che fosse incorporato in una delle schede del mio Gtk.Notebook (che ho creato con Glade).

Non riuscivo a trovare un modo ovvio per farlo. Qualcuno ha suggerimenti?

Risposta accettata:

Puoi spostare l'area dei contenuti (GtkVBox ) da GtkDialog a un altro GtkContainer , quindi aggiungi a GtkNotebook – utilizzando gtk.Widget.reparent() metodo.

about = Gtk.AboutDialog()
about.set_program_name ("Application")
about.set_copyright ("Author")

box = Gtk.VBox ()
about.vbox.reparent (box)
notebook.append_page (box, Gtk.Label("About"))
about.destroy ()

Con l'interfaccia creata in Glade, devi fare un semplice trucco per questa soluzione. Crea la scheda "Informazioni" nel taccuino con GtkBox aggiunto (con id ad esempio “about_box”). Quindi puoi fare qualcosa del genere:

box = builder.get_object ("about_box")
about.vbox.reparent (box)

Per alcuni motivi GtkAboutDialog di Glade area contenuti contiene anche GtkButtonBox . Se non hai bisogno di questi pulsanti, distruggili semplicemente:

about.action_area.destroy()

Se vuoi solo il pulsante "Crediti", senza il pulsante "Chiudi", fai qualcosa del genere:

close_button = about.get_widget_for_response(Gtk.ResponseType.CANCEL)
close_button.destroy()

Ubuntu
  1. Come configurare un ambiente di sviluppo LAMP in Vagrant

  2. Come ripristinare /etc/profile??

  3. Come Grep nel contenuto di una variabile stringa?

  4. Come caricare contenuti su Plesk

  5. Come utilizzare un tema GTK 3 diverso per usi specifici

Come bloccare i contenuti per adulti su Ubuntu Linux

Come installare il tema Xenlism Minimalism GTK su Ubuntu 18.04 LTS

Come installare Ubuntu 22.04 su Virtual Box

Come controllare Vagrant Box usando i comandi Vagrant

Come installare MX Linux su Virtual Box

Come installare Debian su Virtual Box