Lux ha scritto:
Ok, sto dando uno sguardo al tuo codice ma avrei bisogno di alcune spiegazioni.
In questo modo credo che tu stia formattando la stringa, giusto?
iSecondiRimanenti = Val(File.BaseName(sDurata)) TRY iCentesimi = Val(File.Ext(sDurata))
questa non l'ho capita, File.BaseName cosa fa?
IF iOre > 0 THEN iSecondiRimanenti = iSecondiRimanenti MOD 3600
idem, MOD è l'operatore modulo % ?
sFormatDurata = Format(iOre, "0#") & ":" & Format(iMinuti, "0#") & ":" & Format(iSecondi, "0#") & "." & Format(iCentesimi, "0#")
Lo 0# cosa indica?
Ciao e grazie mille!
File.BaseName() daà il nome di un file senza estensione. Se consideriamo la stringa
tempo di mplayer che è secondi.cents come se fosse il nome di un file,
con file.basename abbiamo i secondi con TRY File.Ext() ricaviamo i cents. Il TRY ci vuole
nel caso ci sia un valore con solo secondi tipo "300". Poi con Val trasformiamo le stringhe in Integrali.
MOD restituisce il resto di una divisione es.: 9 MOD 4, restituisce 1 perché 9:4=2 con il RESTO di 1.
In questo caso ci aiuta a ricavare i secondi restanti dopo aver calcolato le ore.
0# serve per formattare il risultato a due cifre, aggiuggendo uno zero se è il caso.
così avrai per esempio 05:10:34.21.
Per quanto riguarda il tuo problema io ho risolto e non posso fare niente altro.
Prova a scegliere il file con l'icona open file e non dall'icona directory.
Insomma, nella combobox ci deve essere il nome del file completo di estensione.