Strumenti Utente

Strumenti Sito


programmazione:rust:gtkrs:gestione_memoria

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
programmazione:rust:gtkrs:gestione_memoria [06/05/2026 15:45] – Fabio Di Matteoprogrammazione:rust:gtkrs:gestione_memoria [12/05/2026 13:50] (versione attuale) – Fabio Di Matteo
Linea 3: Linea 3:
  
 Alcuni esempi che mostrano alcuni casi tipici di gestione della memoria. Alcuni esempi che mostrano alcuni casi tipici di gestione della memoria.
 +
 +Miei progetti che implementano le conoscenze affrontate in questo articolo:
 +  * [[https://www.freemedialab.org/code/project.php?p=video_cutter|Progetto Gtkrs completo di esempio ]]
  
 ===== Due button che incrementano una stessa variabile intera ===== ===== Due button che incrementano una stessa variabile intera =====
Linea 107: Linea 110:
  
 Come detto clono label0 in label_clone prima di riutilizzarlo. Come detto clono label0 in label_clone prima di riutilizzarlo.
 +
 +==== Altro esempio di interazione ====
 +Apro una seconda finestra al click di un Button.
 +<code rust>
 +...
 +let window2 = Window::builder()
 +        .title("Seconda finestra")
 +        .width_request(700)
 +        .visible(false)
 +        .build();
 +
 +    let button2 = Button::builder().label("Apre seconda finestra").build();
 +    box0.append(&button2);
 +
 +    let w2_clone = window2.clone();
 +    button2.connect_clicked(move |_| {
 +        w2_clone.present();
 +    });
 +
 +
 +...
 +</code>
 +
 +
 +==== Intercettare chiusura finestra e cambiare comportamento ====
 +
 +<code rust>
 + window2.connect_close_request(|w| {
 +        w.hide();
 +        return glib::Propagation::Stop;
 +    });
 +
 +</code>
 +
  
 ===== Modificare i widget da thread esterni al ciclo principale delle Gtk ===== ===== Modificare i widget da thread esterni al ciclo principale delle Gtk =====
programmazione/rust/gtkrs/gestione_memoria.1778075130.txt.gz · Ultima modifica: 06/05/2026 15:45 da Fabio Di Matteo