Home > Gtk3, PyGObject, python > PyGObject: Gtk.LinkButton

PyGObject: Gtk.LinkButton

13 Aprile 2020

torna all’indice appunti

LinkButton

Il Gtk.LinkButton è un Gtk.Button con un hyperlink, che innesca un azione quando viene cliccato.
Un link button viene creato sia con il class-method Gtk.LinkButton.new(), sia con Gtk.LinkButton.new_with_label(),
dove la URI passata al costruttore verrà utilizzata come label del widget.
La URI legata al Gtk.LinkButton può essere settata con il metodo Gtk.LinkButton.set_uri(), e recuperata con il metodo
Gtk.LinkButton.get_uri().
Di default Gtk.LinkButton chiama Gtk.show_uri_on_window() quando viene cliccato.

Le properties principali sono:

Name Type Flags Short Description
uri str r/w La URI legata al button
visited bool r/w/en Se questo link è stato visitato

Segnali

Il segnale relativo al linkbutton è:

Name Short Description
activate-link Il segnale “::activate-link” viene emesso ogni volta che il Gtk.LinkButton viene cliccato

Metodi

Oltre ai soliti getter e setter relativi alle properties dell’oggetto Gtk.LinkButton, i principali metodi sono:

new(uri)

Crea un nuovo Gtk.LinkButton con la URI passata come argomento.
Parametri:
uri: una URI valida;

new_with_label(uri, label)

Crea un nuovo Gtk.LinkButton con la URI passata come argomento e una label per il button.
Parametri:
uri: una URI valida;
label: il testo del button;

get_uri()

Ritorna la URI settata con il metodo Gtk.LinkButton.set_uri().

get_visited()

Ritorna lo stato “visited” della URI alla quale punta il button. Il Button diventa “visitato” quando viene cliccato, quindi il metodo
ritorna True. Se la URI del button cambia, lo stato della URI passa da “visited” ad “unvisited” e in questo caso il metodo
ritorna False. Lo stato cambia anche invocando il metodo Gtk.LinkButton.set_visited().

set_uri(uri)

Setta la URI alla quale il Gtk.LinkButton punterà. Come effetto collaterale questo porterà a False, lo stato “visited” della URI.
Parametri:
uri: una URI valida;

set_visited(visited)

Setta a True lo stato “visited” della URI alla quale punta il Gtk.LinkButton.
Parametri:
visited: il boolean che setta lo stato “visited” della URI;

Di seguito un codice di esempio:

import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk


class GButton(Gtk.Window):

    def __init__(self):
        super().__init__(title="LinkButton Example")
        self.set_border_width(10)
        linkbutton = Gtk.LinkButton.new_with_label(
            uri="http://www.google.it", label="Google")
        self.add(linkbutton)

        linkbutton.connect("activate-link", self.on_activate)

    def on_activate(self, linkbutton):
        print("INFO: you are visiting '%s'" % linkbutton.get_uri())


if __name__ == "__main__":
    win = GButton()
    win.connect("destroy", Gtk.main_quit)
    win.show_all()
    Gtk.main()

link di riferimento:

torna all’indice degli appunti
Gtk3 LinkButton

Categorie:Gtk3, PyGObject, python Tag: , ,
I commenti sono chiusi.