risolto!!!!! :evviva:
ecco le modifiche:
PUBLIC SUB ListBox1_MouseDown()
DIM audio, length, sini, ind AS String
DIM sx AS Integer
DIM audio2 AS File
'quando clicco su una canzone nella playlist questa viene mandata in esecuzione
'prima di far partire la riproduzione verifico che il file ci sia, se non c'è lo rimuovo dalla playlist e riproduco
'l'elemento successivo
'TRY Music.Load(ListBox1.Text)
IF ERROR THEN
ListBox1.Remove(ListBox1.Index)
PRINT "errore"
PRINT ListBox1.Count
Message.Info("File non trovato")
'se nella playlist ho più di un elemento
PRINT "index:" & ListBox1.Index
IF ListBox1.Count > 1 THEN
'se ero sull'ultimo elemento fermo tutto
PRINT "index if:" & ListBox1.Index
IF ListBox1.Index = ListBox1.Count THEN
Music.Stop
timMusic.Enabled = FALSE
ELSE
ListBox1.Index = ListBox1.Index + 1
ListBox1_DblClick
ENDIF
'se ho meno di un elemento nella playlist vado qua
ELSE
PRINT ListBox1.Count
'se la mia playlist è vuota avviso l'utente e fermo tutto
IF ListBox1.Count = 0 THEN
Message.Info("Nessun file presente nella playlist")
Music.Stop
timMusic.Enabled = FALSE
ENDIF
IF ListBox1.Count = 1 THEN
ListBox1.Index = 0
ListBox1_DblClick
ENDIF
ENDIF
ENDIF
END
PUBLIC SUB ListBox1_DblClick()
DIM audio, length, sini, ind, tmp AS String
DIM sx AS Integer
DIM audio2 AS File
TRY Music.Load(ListBox1.Text)
IF ERROR THEN
'PRINT ("if")
ListBox1_MouseDown
ELSE
'se non si verifica nessun errore riproduco normalmente
STOPS = FALSE
audio = ListBox1.Text
SHELL "mplayer -ao null -ss 24:00:00 -really-quiet -identify " &
Quote.Shell(audio) & " 2>&1 | grep ID_LENGTH | cut -f2 -d=" WAIT TO length
sini = Left(length, 3)
sini = sini + 1
sx = Val(sini)
sldPos.MaxValue = sx
Title.Text = ListBox1.Text
Play_Click
ENDIF
END
come potete vedere ho cambiato anche da listbox1_click a listbox1_dblclick.
ho seguito il metodo proposto da leo72!!
adesso devo riordinare un pò il codice!!
siete stati disponibilissimi come sempre!! :coccole: