• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
C(99) gtk   04 - label,button e entry
 

C(99) gtk 04 - label,button e entry

on

  • 317 views

Utilizzo dei widget :

Utilizzo dei widget :
Label,button ed entry.
Un rapido sguardo anche sui principali widget derivati da essi

Statistics

Views

Total Views
317
Views on SlideShare
317
Embed Views
0

Actions

Likes
0
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    C(99) gtk   04 - label,button e entry C(99) gtk 04 - label,button e entry Presentation Transcript

    • * http://corsogtk.chipsy.it/ Label,Button,Entry
    • *
    • * Le label sono dei contenitori di testo, questo testo viene visualizzato e non può ne essere selezionato dall’utente o modificato per via diretta.* Per crearle dobbiamo usare la funzionearea_testo = gtk_label_new("testo inziale");* Possiamo cambiare il contenuto in qualsiasi momento usando la funzionegtk_label_set(area_testo,"nuovo testo");
    • * Avere dei testi tutti della stessa dimensione , carattere e colore, è una cosa brutta da vedere! per fortuna esiste una funzione molto semplice che ci aiuta a personalizzare ogni singola label.* Questa funzione ègtk_label_set_markup(area_testo,"<spanforeground=green>Testo verde</span>");Questa funzione ci permette di gestire la label comeche la visualizzi un browser e quindi con una sintassisimile all’HTML.Questo linguaggio di markup si chiama Pango markupformat-
    • * Alcuni elementi base del linguaggio «Pango markup format» :* <span></span> possiamo dargli degli attributi inserendoli tra <span e > ciò che è contenuto tra <span> e </span> è il testo che deve essere mostrato* Attributi :* foreground (o fgcolor o color) colore del testo, può essere il nome inglese del colore o in formato HTML (#FFFFFF , RGB, il colore è diviso in 3 colori scritti in esadecimale, il primo FF è il Rosso, secondo Verde, terzo Blu)* background (o bgcolor) colore dello sfondo
    • * font Nome della font usata e dimensione ad esempio : Sans Italic 12* font_family (o face) Nome della font usata (da solo)* font_style (o style) Stile del font (normal, oblique, italic)* font_weight (o weight) Grossezza del testo (ultralight, light, normal, bold, ultrabold, heavy) esprimibile anche con un numero volendo* underline Se il testo deve essere sottolineato : none, single, double, low, error‘* underline_color Colore della linea di sottolineatura
    • * è possibile usare dei tag diversi da <span> in modo da dover scrivere meno codice, questi tag assegnano velocemente una proprietà e non hanno attributi :* <b>Ciao</b> Grassetto* <i>Ciao</i> Corsivo* <u>Ciao</u> Sottolineato* <s>Ciao</s> Barrato* <sub>Ciao</sub> Pedice* <sup>Ciao</sup> Apice* <small>Ciao</small> Diminuisce la dimensione* <big>Ciao</big> Aumenta la dimensione* <tt>Ciao</tt> Font monospace
    • *
    • * Per creare un bottone dobbiamo usare :* bottone = gtk_button_new();* bottone= gtk_button_new_with_label("Testo bottone");* e infine* bottone= gtk_button_new_with_mnemonic ("&Cliccami");* Quest’ultimo modo di crearlo è quello migliore, infatti in questo modo la lettere subito dopo «&» viene sottolineata e calcando ALT+quella lettera, si schiaccia il bottone.
    • * Possiamo anche aggiungere un’immagine al bottone, per fare questo dobbiamo prima abilitare il bottone a mostrare le immagini :* e dopo assegnarli un GtkImage (si quelle dell’altra presentazione)gtk_button_set_image (mio_bottone,mia_immagine);* Per assegnare una funzione al bottone in modo che quando clicchiamo venga eseguita dobbiamo connettere il segnale "button-release-event" (vedi presentazione 1)
    • *
    • * I Toggle button son dei bottoni che quando vengono premuti restano premuti, e quando vengono ripremuti tornano come erano all’inizio :Per crearli possiamo usare :* my_button = gtk_toggle_button_new ()* my_button = gtk_toggle_button_new_with_label ()* my_button = gtk_toggle_button_new_with_mnemonic ()Per sapere quando vengono premuti abbiamo l’evento"toggled"e per sapere se son attualmente premuti possiamo usareschiacciato = gtk_toggle_button_get_active (my_button)quello che otteniamo è un valore boolean (TRUE/FALSE)
    • * I check button son quelli che comunemente chiamiamo bottoni a spunta o checkbox :Per crearli possiamo usare :* my_button = gtk_check_button_new ()* my_button = gtk_check_button_new _with_label ()* my_button = gtk_check_button_new _with_mnemonic ()Per sapere quando vengono premuti abbiamo l’eventoe se son premuti dobbiamo usare le funzioni deltoggle button appena visto
    • * Altro figlioletto che potrebbe tornarci utile è il link button, questo bottone mostra un collegamento a un sito che può essere cliccatoPer crearlo possiamo usare :* my_button = gtk_link_button_new ("http://sito.com")* my_button = gtk_link_button_new_with_label ("http://sito.com","Testo collegamento")
    • *
    • * L’entry è un’area di testo in cui l’utente può scrivere, possiamo crearle con le seguenti funzioni :* area_testo = gtk_entry_new ();* area_testo = gtk_entry_new_with_max_length (20);* Nel secondo modo l’utente non potrà inserire più di 20 caratteri, cosa molto utile se dobbiamo memorizzare il suo contenuto in un vettore di caratteri di lunghezza fissa.
    • * Per inserire noi testo nell’entry da codice abbiamo 3 funzioni :1. gtk_entry_set_text (area_testo,"ciao")2. gtk_entry_append_text (area_testo,"ciao")3. gtk_entry_prepend_text (area_testo,"ciao")Che rispettivamente :1. Imposta il testo a "ciao"2. Aggiunge alla fine del testo già contenuto "ciao"3. Aggiunge all’inizio del testo già contenuto "ciao"
    • * Se invece vogliamo prendere il testo contenuto nell’entry abbiamo a disposizione 2 utili funzioni :1. testo = gtk_entry_get_text(area_testo);2. lunghezza = gtk_entry_get_text_length (area_testo);Che rispettivamente :1. Mi da il testo contenuto nell’entry2. Mi da la lunghezza del testo contenuto nell’entryNota :La prima funzione restituisce un *char
    • *
    • * Lo spinbutton è il figlio dell’entry che torna più utile per l’input di numeri.* Di default questo widget accetta solo numeri dall’utente, tuttavia è impostabile perché accetti anche lettere.* Per crearlo possiamo usare :my_edit = gtk_spin_button_new_with_range (10,100,5);I parametri sono :1. Valore minimo dello spinbutton2. Valore massimo dello spinbutton3. Di quanto deve variare il valore premendo dei bottoni* Esiste anche la funzione classica di creazione dello spinbutton ma comporta che prima dobbiamo creare anche un GtkAdjustment cosa che a noi risoluta scomoda.
    • * Per leggerne il contenuto abbiamo a disposizione 2 funzioni :1. double num = gtk_spin_button_get_value (my_edit)2. int num = gtk_spin_button_get_value_as_int (my_edit)* Invece per settarne il valore abbiamo :* gtk_spin_button_set_value(my_edit,10.20);