Vai al contenuto
Leo

Controllo · scheda Scelta

Elenco

Elenco di elementi tra cui sceglierne uno (o più).

  • Scheda Scelta
  • 160×120 pixel
  • PC: sì
  • Telefono: sì
Il controllo Elenco come appare in un'app
Come appare, disegnato dal motore delle finestre di Leo

Esempio

Metti un Elenco nella finestra (si chiamerà Elenco1) e scrivi:

Finestra1.leoprovato con Leo
quando Finestra1.apertura fai    Elenco1.multipla = verofine quando Elenco1.selezione fai    stampa("selezione: indice = {evento["indice"]}")fine
Risultato (controlli simulati)
selezione: indice = 0
Elenco1.multipla = vero

Proprietà

Si leggono e si cambiano con il punto: Elenco1.elementi. Ha anche le proprietà comuni a tutti i controlli (posizione, colori, carattere, bordo, effetti).

ProprietàTipoInizialeSignificato
elementilista[]Elementi mostrati
indice_selezionatointero, almeno -1-1Posizione dell'elemento scelto (-1 quando non è scelto nessuno)
selezione sola letturaqualsiasinullaElemento scelto (nulla se nessuno)
multiplalogicofalsoSe vero si possono scegliere più elementi (allora selezione è una lista)
stilescelta tra `"normale"`, `"moderno"`, `"pillola"`, `"3d"`, `"neon"`, `"vetro"`, `"cartone"`, `"pixel"`, `"carta"`, `"minimale"`, `"gioco"`, `"elegante"`, `"tecnico"`"normale"Stile dell'oggetto: la forma (angoli, bordi, ombre, carattere, reazione al tocco); il colore resta quello scelto. "normale" = come la finestra
dinamichelista[]Comportamenti da gioco senza codice: giocatore, gravità e salto, piattaforma, raccoglibile, nemico, spara, rimbalza, trascinabile... (se ne possono mettere più di una)

Eventi

  • quando Elenco1.selezione fai principaleQuando si sceglie un elemento. In evento: indice, elemento.
  • quando Elenco1.clic faiQuando si fa clic sul controllo. In evento: x, y.

Metodi

  • Elenco1.aggiungi(elemento)Aggiunge un elemento in fondo all'elenco.
  • Elenco1.rimuovi(indice)Toglie l'elemento alla posizione indice (da 0) e lo restituisce.
  • Elenco1.svuota()Toglie tutti gli elementi.
  • Elenco1.salta([forza])Fa saltare l'oggetto: Palla.salta() o Palla.salta 15 (forza da 1 a 30: 10 è il salto normale).
  • Elenco1.spingi([velocita_x], [velocita_y])Dà una spinta: Palla.spingi(300, -200) (pixel al secondo; y negativo = in su).
  • Elenco1.ferma_movimento()Ferma il movimento dell'oggetto (le dinamiche restano).
  • Elenco1.spara()Spara un colpo adesso (serve la dinamica "spara", altrimenti una pallina in avanti).
  • Elenco1.esulta([secondi])Il personaggio esulta per un po' (salti di gioia).
  • Elenco1.aggiungi_dinamica(nome, [regolazioni])Aggiunge una dinamica: Palla.aggiungi_dinamica("rimbalza", {"velocità_x": 300}).
  • Elenco1.togli_dinamica(nome)Toglie una dinamica: Nemico1.togli_dinamica("nemico").
  • Elenco1.ha_dinamica(nome)Vero se l'oggetto ha la dinamica: se Palla.ha_dinamica("gravità") allora.
  • Elenco1.regola(nome, regolazione, valore)Cambia una regolazione: Giocatore.regola("giocatore", "velocità", 400).
  • Elenco1.tocca(altro)Vero se i due oggetti si toccano adesso: se Giocatore.tocca(Lava) allora.

E tutte le animazioni comuni: Elenco1.lampeggia(), Elenco1.rimbalza(), Elenco1.vola_a(x, y)…

Stili pronti

Con Elenco1.stile = "principale" prende colori, bordo e reazione al mouse coerenti con il tema della finestra.

  • normale
  • moderno
  • pillola
  • 3d
  • neon
  • vetro
  • cartone
  • pixel
  • carta
  • minimale
  • gioco
  • elegante
  • tecnico

Dove funziona

  • PCsì
  • Telefonosì

Nella stessa scheda