Jump to content
Sign in to follow this  
Tiago_22

[VB.NET] Filebox para listbox

Recommended Posts

Tiago_22

Boas!

Eu estou a tentar fazer um reprodutor de mp3, mas estou a ter algumas dificuldades...

O meu form tem 2 botoes, uma drivebox, uma dirbox, uma filebox, uma listbox e o reprodutor do win media player.

eu ja consegui reproduzir musica, mas é so uma... ao inicio  :D

pus es te codigo pa reproduzir musa ao inicio:

Private Sub Form_Load()
   WindowsMediaPlayer1.URL = "C:\Documents and Settings\Tiago\Os meus documentos\A minha música\02-Jonh Cena - Right now.mp3"
End Sub

mas agr estou com problemas em adicionar as musicas na filebox para um listbox para depois reproduzir  :)

e tou a tentar com este codigo no botao adicionar

Private Sub Add_Click()
selectedfile = File1.Path & "\" & File1.FileName
lista.AddItem = File1.FileName
End Sub

e com este no botao adicionar todas

Private Sub AddAll_Click()
Dim i As Integer
    For i = 0 To File1.ListCount - 1
        lista.AddItem Dir1.Path & "\" & File1.List(i), File1.List(i)
    Next
    lista.AddItem = File1.ListCount
End Sub

Se alguem me poder ajudar, agradeço  ;)

cumps  ;)

Share this post


Link to post
Share on other sites
vbmaster

Eu já fiz uma coisa parecida, mas em vb.net...posso-te mostrar se tiveres a usar vb.net 2003

Share this post


Link to post
Share on other sites
Tiago_22

yap podes ser, eu agr usu o vb 6 pk é o k se da na escola, mas tb tenhu o vb.net 2003  😎

qd poderes, poes aki o codigo, sff

cumps  ;)

Share this post


Link to post
Share on other sites
vbmaster

Bem, o que interessa para o teu caso é só isto:

Private Sub Timer18_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer18.Tick
        If MediaPlayer1.FileName = TextBox15.Text Then
            If (MediaPlayer1.Duration - MediaPlayer1.CurrentPosition) = 0 Then
                MediaPlayer1.Stop()
                MediaPlayer1.FileName = TextBox16.Text
                If TextBox16.Text = "" Then
                    MediaPlayer1.Stop()
                Else
                    Try
                        MediaPlayer1.Play()
                    Catch exception As Exception
                        MessageBox.Show("Erro." & vbLf & "O ficheiro seleccionado poderá estar danificado," & vbLf & _
                        "experimente abri-lo com outro porgrama de reprodução.", "mp DiskJockey", MessageBoxButtons.OK, MessageBoxIcon.Error)
                    End Try
                    Timer18.Enabled = False
                    Timer19.Enabled = True
                End If
            End If
        End If
    End Sub

Que é o que permite abrir a entrada da listbox seguinte, isso tem de estar no timer, e é só mudar onde diz textbox ;)

Share this post


Link to post
Share on other sites
Tiago_22

boas outra x!

d_pintassilgo descarreguei o ficheiro, mas n me ajudou mt... pk n consegui ver o codigo... deu erro.

qual o codigo k devo meter no botoes adicionar e adicionar todos (que adiciona o(s) ficheiro(s) selecionados da filebox numa listview)?

é k o meu ñ funciona  ;)

cumps  ;)

Share this post


Link to post
Share on other sites
vbmaster

Bem,

'General declarations
Dim x As Integer

'Sub Private Command1_Click ()
CommonDialog1.ShowOpen
ListBox1.Additem (x, Commondialog1.Filename)
x=x+1
End Sub

Share this post


Link to post
Share on other sites
Tiago_22

boas,

ñ percebi o porquê do CommonDialog1  🤔

podem-m explicar o k faz

cumps  ;)

Share this post


Link to post
Share on other sites
vbmaster

boas,

ñ percebi o porquê do CommonDialog1  🤔

podem-m explicar o k faz

cumps  ;)

É um componente que tens de adicionar e que te dá acesso às janelas típicas do windows.

Tipo a que te aparece se fizeres no ward abrir, ou guardar como.

;)

Share this post


Link to post
Share on other sites
M@KO

Boas!!

Olha uma maneira simples:

poes no form isto

DirListBox

FileListBox

ListBox

MediaPlayer

Botao

E fazes este codigo

Private Sub botao_Click()
wmp.FileName = (List1)
End Sub

Private Sub Dir1_Change()
    File1.Path = Dir1
End Sub

Private Sub File1_Click()
List1.AddItem (Dir1 & "\" & File1)
End Sub

Private Sub Form_Load()
Dir1.Path = "C:"
File1.Pattern = "*.mp3"
End Sub

ao carregares no botao toca a musica selecionada na list1

Share this post


Link to post
Share on other sites
vbmaster

wow, esse trick não conhecia...

Mas ainda assim prefiro o commondialog ao drivelist box..

mas esse método de passar como filename ao wmp toda a listbox é engenhoso sim senhor... gostei,,, ;)

Share this post


Link to post
Share on other sites
Tiago_22

tks M@KO codigo mt bom  ;)

tks vbmaster e d_pintassilgo

ja consegui por  a reproduzir mp3  ;)

cumps  :D

Share this post


Link to post
Share on other sites
Tiago_22

vbmaster eu dps tambem faço um com o commondialog, pa ver o k rulla mais :)

M@KO no teu código as musicas k keremos vao para um listbox e depois a musica da listbox k estiver selecionada toca, mas quando essa musica acaba n devia começar a tocar a musica abaixo dessa na listbox?

alguem me pode ajudar no code para ir reproduzindo as musicas abaixo da musica selecionada  k acabou...

cumps  :)

Share this post


Link to post
Share on other sites
M@KO

oi! desculpa la a demora mas nao conegui por a reproduzir ao sons seguidos directamente da list1 por isso fiz um array onde gravo as musicas ke kero ouvir

e a list1 serve so pra ver o ke esta a tocar, tas a ver o filme????

com o mesmo form mete este codigo

Dim x, y As Integer
Dim lista(99) As String

Private Sub Command1_Click()
wmp.FileName = (lista(y))
End Sub

Private Sub Dir1_Change()
    File1.Path = Dir1
End Sub

Private Sub File1_Click()
If x < 100 Then
    List1.AddItem (Dir1 & "\" & File1)
    lista(x) = (Dir1 & "\" & File1)
    x = x + 1
Else
    MsgBox ("Entao, 99 musicas nao te chega???")
End If
End Sub

Private Sub Form_Load()
x = 0
y = 0
Dir1.Path = "C:\"
File1.Pattern = "*.mp3"
End Sub

Private Sub wmp_EndOfStream(ByVal Result As Long)
    y = y + 1
    wmp.FileName = (lista(y))
End Sub

Esta soluçao do array tireia dakele exemplo que o d_pintassilgo aqui tem ke tu na conseguiste ver o codigo.

Share this post


Link to post
Share on other sites
M@KO

Boas noticias  :cheesygrin: já descobri como ponho a tocar as musicas seguidas diretamente da list1

o codigo fica muito mais simples :cheesygrin:

novamente com o mesmo form poe este codigo

Dim x As Integer

Private Sub Command1_Click()
wmp.FileName = (List1.List(x))
End Sub

Private Sub Dir1_Change()
    File1.Path = Dir1
End Sub

Private Sub File1_Click()
    List1.AddItem (Dir1 & "\" & File1)
End Sub

Private Sub Form_Load()
x = 0
Dir1.Path = "C:\"
File1.Pattern = "*.mp3"
End Sub

Private Sub wmp_EndOfStream(ByVal Result As Long)
    x = x + 1
    wmp.FileName = (List1.List(x))
End Sub

:)

Share this post


Link to post
Share on other sites
Tiago_22

tks, já esta a funkar  :D   :)

alguem sabe se da para alterar o skin do objecto windos media player?

fikem bem =p

cumps  :thumbsup:

M@ko e vbmaster tem sido uns porreiros  :thumbsup:

Share this post


Link to post
Share on other sites
vbmaster

Constrói o tue próprio objecto, tendo por trás as funções dum objecto media player escondido....

:D

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.