Gambas-it

Archivi (sola lettura) => Programmazione (Gambas 2) => Topic aperto da: guglielmofede - 18 Maggio 2010, 23:00:27

Titolo: [RISOLTO] FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: guglielmofede - 18 Maggio 2010, 23:00:27
SALVE,

in oggetto, ho indicato una funzione che vorrei fare Mia.
In verità so quello che fa, in sintesi mi da i nomi dei file con estensione JPG inseriti in una cartella in ordine crescente.
Però chi comanda l'avanzamento e il ciclo for.
Mi servirebbe avere i nomi dei file ad ogni Mia richiesta e alla fine della lista ripartire dall'inizio.
Vorrei utilizzare solo comandi GAMBAS senza l'ausilio della shell e dei comandi OPEN etc...

Credo/Spero sia possibile, anche perchè la vedo come una sintassi più elegante e semplice.

A Presto.....
Titolo: Re: FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: fsurfing - 19 Maggio 2010, 13:02:44
questo può essere un modo :
Codice: [Seleziona]
PUBLIC SUB Button4_Click()

  DIM lista AS NEW string[]
  DIM i AS Integer
 
  lista = Dir(User.Home).Sort(gb.Ascent)
 
  FOR EACH lista
      label1.Text = lista[i]
      WAIT 0.5
      INC i
  NEXT

END


anche se non capisco cosa intendi con
Citazione
e alla fine della lista ripartire dall'inizio.
Titolo: Re: FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: guglielmofede - 19 Maggio 2010, 18:18:50
SALVE,

intanto GRAZIE !
Citazione
e alla fine della lista ripartire dall'inizio.
Intendevo dal primo elemento della lista.
Come si fa a sapere la dimensione della tabella ?

A Presto.....
Titolo: Re: FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: Ceskho - 19 Maggio 2010, 18:30:14
SALVE,

intanto GRAZIE !
Citazione
e alla fine della lista ripartire dall'inizio.
Intendevo dal primo elemento della lista.
Come si fa a sapere la dimensione della tabella ?

A Presto.....

Tabella? Nel senso quella contenuta in un database?
Titolo: Re: FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: guglielmofede - 19 Maggio 2010, 19:34:34
SALVE,

intendevo la lunghezza dell'array creata con
Codice: [Seleziona]
 DIM lista AS NEW string[]


A Presto...
Titolo: Re: FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: guglielmofede - 22 Maggio 2010, 09:24:54
SALVE,

con la funzione
Codice: [Seleziona]
  lista = Dir(User.Home).Sort(gb.Ascent)
si riesce ad avere i nomi dei file nella directory specificata.
Ma come si fa a sapere quanti sono i file ?

Con
Codice: [Seleziona]
 FOR EACH lista 
      conteggio +=1
  NEXT
si può sapere, ma un modo più diretto ?

A Presto.....
Titolo: Re: FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: milio - 22 Maggio 2010, 09:48:17
DIM n AS Integer

  n = Dir(User.Home).Count
Titolo: Re: FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: fsurfing - 22 Maggio 2010, 13:24:17
oppure semplicemente con

Codice: [Seleziona]
n=lista.count
Titolo: Risolto FOR EACH ..... IN Dir(......, "*.JPG").Sort() chiarimenti
Inserito da: guglielmofede - 22 Maggio 2010, 14:25:33
SALVE,

GRAZIE a Tutti.......

Ho cambiato l'oggetto con risolto.

A Presto.........