Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Mp3-Player

[es] :: Visual Basic 6 :: Mp3-Player

[ Pregleda: 2964 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Ivan(NG)
Ivan (NG)
Nova Gradiška

Član broj: 14130
Poruke: 28
*.net.hinet.hr

Sajt: ivan007.na-netu.com


Profil

icon Mp3-Player04.10.2003. u 17:24 - pre 250 meseci
Napravio sam mp3 player.

Kada ga prvi put pokrenem nakon paljena kompa,sve mi radi ali kad
ga pokrenem 2 put javlja mi ovo


:Run time error '380':
invalid property valute


zašto to!

kako da napravim kada pjesma završi da prebaci na drugu
__________________________
YO!
 
Odgovor na temu

mladenovicz
Zeljko Mladenovic
Xoran Technologies, Inc., Ann Arbor, MI,
USA / Software Engineer
Ann Arbor, MI, USA

Član broj: 6598
Poruke: 2065
*.yubc.net

Jabber: mladenovicz@elitesecurity.org
ICQ: 95144142
Sajt: yubc.net/~mz


Profil

icon Re: Mp3-Player04.10.2003. u 17:39 - pre 250 meseci
kad bi postovao kod gde se javlja greska i koje objekte koristis mozda bi neko mogao da ti pomogne
 
Odgovor na temu

Ivan(NG)
Ivan (NG)
Nova Gradiška

Član broj: 14130
Poruke: 28
*.net.hinet.hr

Sajt: ivan007.na-netu.com


Profil

icon Re: Mp3-Player05.10.2003. u 14:56 - pre 250 meseci
Evo cijeli program
__________________________
YO!
Prikačeni fajlovi
 
Odgovor na temu

mladenovicz
Zeljko Mladenovic
Xoran Technologies, Inc., Ann Arbor, MI,
USA / Software Engineer
Ann Arbor, MI, USA

Član broj: 6598
Poruke: 2065
*.yubc.net

Jabber: mladenovicz@elitesecurity.org
ICQ: 95144142
Sajt: yubc.net/~mz


Profil

icon Re: Mp3-Player05.10.2003. u 16:37 - pre 250 meseci
Nemoj se ljutiti, ali kod ti je uzasno necitak. Nista nije nazubljeno, nazivi kontrola i promeljivih su uzasni. Pogledaj u MSDNu naming conventions ili nadji na netu Leszinsky convention.

Druga stvar, ne koristis kako treba On Error GoTo. Evo primera iz tvog koda:
Code:

Private Sub Form_Load()
Dim sfile, a As String

    plays = "stop"
    sloop = "False"
    Slider2.Value = 2500
    sfile = App.Path + "\" + "default.mpl"
    
    On Error GoTo serr
    
    Open sfile For Input As #1
    
    Do Until EOF(1)
        Input #1, a$
        List1.AddItem a$
    Loop
    
    Close #1
serr:
    Close #1
End Sub


Kod tebe ce se serr labela izvrsiti i ako je bilo greske i ako nije. Ovo bi trebalo da izgleda ovako

Code:

Private Sub Form_Load()
Dim sfile, a As String

    plays = "stop"
    sloop = "False"
    Slider2.Value = 2500
    sfile = App.Path + "\" + "default.mpl"
    
    On Error GoTo serr
    
    Open sfile For Input As #1
    
    Do Until EOF(1)
        Input #1, a$
        List1.AddItem a$
    Loop
    
    Close #1
    
    Exit Sub ' nije bilo greske, izadji iz procedure/funkcije
    
serr:
    Close #1
End Sub


Toliko o primedbama. Jos jednom, nemoj se ljutiti zbog ovoga, ovo su dobronamerne sugestije.

Elem, tvoj problem se javlja kad zatvoris aplikaciju (bar kod mene), zato sto setujes Slider1 kontroli Max property na 0 i to je taj Invalid property value. Problem je kod koji se nalazi na Form_Unload

Code:

Private Sub Form_Unload(Cancel As Integer)
Dim sfile As String
Dim i As Long

    sfile = App.Path + "\" + "default.mpl"
    On Error GoTo error
    Open sfile For Output As #1
    For i = 0 To 100
        List1.ListIndex = i
        Write #1, List1.Text
    Next i
    
error:
    Close #1
End Sub


Problem je linija List1.ListIndex = i. Kad se ovo izvrsi okida se event List1_Click i izvrsava se taj kod tamo, a tamo setujes Slider.Max1 na nulu, a to je i Min vrednost

Evo jedno quick and dirty resenje. Na pocetku koda za formu dodaj ovo:
Code:

Private m_SavingToFile As Boolean


Form_Unload treba da ti izgleda ovako:
Code:

Private Sub Form_Unload(Cancel As Integer)
Dim sfile As String
Dim i As Long

    sfile = App.Path + "\" + "default.mpl"

    On Error GoTo error

    m_SavingToFile = True

    Open sfile For Output As #1
    For i = 0 To 100
        List1.ListIndex = i
        Write #1, List1.Text
    Next i
    
proc_exit:
    Close #1
    m_SavingToFile = False
    Exit Sub
error:
    Resume proc_exit
End Sub


Na pocetak List1_Click() dodaj ovu liniju:
Code:

If m_SavingToFile Then Exit Sub


Znaci List1_Click() se nece izvrsavati ako je u toku pisanje u fajl, i nece doci do setovanja Slider1.Max na 0.

Drugi jednostavniji nacin je da ides kroz listbox na sledeci nacin

Code:

    For i = 0 To List1.ListCount - 1
        Debug.Print List1.List(i)
    Next


onda ti se nece okidati Click event

 
Odgovor na temu

Ivan(NG)
Ivan (NG)
Nova Gradiška

Član broj: 14130
Poruke: 28
*.net.hinet.hr

Sajt: ivan007.na-netu.com


Profil

icon Re: Mp3-Player05.10.2003. u 18:14 - pre 250 meseci
Radi!!

Još samo kako da mi nakon završetka pjesme prebaci na slijedeću?

HVALA TI!!!!!!!
__________________________
YO!
 
Odgovor na temu

mladenovicz
Zeljko Mladenovic
Xoran Technologies, Inc., Ann Arbor, MI,
USA / Software Engineer
Ann Arbor, MI, USA

Član broj: 6598
Poruke: 2065
*.yubc.net

Jabber: mladenovicz@elitesecurity.org
ICQ: 95144142
Sajt: yubc.net/~mz


Profil

icon Re: Mp3-Player06.10.2003. u 10:17 - pre 250 meseci
MediaPlayer kontrola dize event EndOfStream kad zavrsi pesmu.

Znaci, ovaj tvoj (nenazubljeni :)) kod:
Code:

Private Sub Play_EndOfStream(ByVal Result As Long)
If Rep.BackColor = &HFF& Then
Exit Sub
Else: Play.Play
End If
End Sub


zameni sa:

Code:

Private Sub Play_EndOfStream(ByVal Result As Long)
    'deselektuj pesmu koja je upravo zavrsena
    List1.Selected(List1.ListIndex) = False
    
    If List1.ListIndex = List1.ListCount - 1 Then
        ' zavrsena je poslednja pesma iz liste, ispitaj repeat
        If Rep.BackColor = &HFF& Then
            Exit Sub
        Else
            List1.ListIndex = 0
            'Play.Play
        End If
    Else
        ' zavrsena je pesma koja nije poslednja, predji na sledecu
        List1.ListIndex = List1.ListIndex + 1
    End If
    
    ' selektuj pesmu u listi koja trenutno ide
    List1.Selected(List1.ListIndex) = True
End Sub

 
Odgovor na temu

Ivan(NG)
Ivan (NG)
Nova Gradiška

Član broj: 14130
Poruke: 28
*.net.hinet.hr

Sajt: ivan007.na-netu.com


Profil

icon Re: Mp3-Player08.10.2003. u 13:20 - pre 250 meseci
On prebaci na drugo pjesmu u listi ,ali na prethodnu iako nije zadnja u listi
__________________________
YO!
 
Odgovor na temu

mladenovicz
Zeljko Mladenovic
Xoran Technologies, Inc., Ann Arbor, MI,
USA / Software Engineer
Ann Arbor, MI, USA

Član broj: 6598
Poruke: 2065
*.yubc.net

Jabber: mladenovicz@elitesecurity.org
ICQ: 95144142
Sajt: yubc.net/~mz


Profil

icon Re: Mp3-Player08.10.2003. u 13:35 - pre 250 meseci
Je l mozes malo da pojasnis sta se desava i da postujes kod?
 
Odgovor na temu

Ivan(NG)
Ivan (NG)
Nova Gradiška

Član broj: 14130
Poruke: 28
*.net.hinet.hr

Sajt: ivan007.na-netu.com


Profil

icon Re: Mp3-Player08.10.2003. u 13:51 - pre 250 meseci
Private Sub Play_EndOfStream(ByVal Result As Long)
'deselektuj pesmu koja je upravo zavrsena
List1.Selected(List1.ListIndex) = False

If List1.ListIndex = List1.ListCount - 1 Then
' zavrsena je poslednja pesma iz liste, ispitaj repeat
If Rep.BackColor = &HFF& Then
Exit Sub
Else
List1.ListIndex = 0
'Play.Play
End If
Else
' zavrsena je pesma koja nije poslednja, predji na sledecu
List1.ListIndex = List1.ListIndex + 1
End If

' selektuj pesmu u listi koja trenutno ide
List1.Selected(List1.ListIndex) = True
End Sub
____________

Nejavlja se nikakvi error.
Kada pijesma završio vb bi trebao bi prebaciti na slijedeću pjesmu,ali
on prebaci na prethodnu.


__________________________
YO!
 
Odgovor na temu

mladenovicz
Zeljko Mladenovic
Xoran Technologies, Inc., Ann Arbor, MI,
USA / Software Engineer
Ann Arbor, MI, USA

Član broj: 6598
Poruke: 2065
*.yubc.net

Jabber: mladenovicz@elitesecurity.org
ICQ: 95144142
Sajt: yubc.net/~mz


Profil

icon Re: Mp3-Player08.10.2003. u 14:22 - pre 250 meseci
Kod mene prebaci na sledecu. Debuguj, stavi break pointe pa vidi sta se desava.
Kod ti nije najsjanjiji. Trebalo bi sto manje da cackas ListBox kontrolu i da izbegavas stvari tipa:
Code:

List1.ListIndex = nesto


Ovde ti se stalno okidaju eventi, a ti ih handleujes i kad treba i kad ne treba. Uvedi promenljivu m_CurrentSong as Integer na nivou forme, napravi funkciju PlaySong koja prima kao parametar m_CurrentSong ili ne mora da ima prametar, koja pusta m_CurrentSong, i samo u toj funkciji setuj List1.ListIndex na neku vrednost. Kad treba da se predje na sledecu/prethodnu pesmu, azuriraj promenljivu m_CurrentSong i pozovi PlaySong funkciju.

Ja sad zaista nemam vremena da debugujem ovaj kod. Napravi ove izmene odozgo bice ti lakse da debugujes, debuguj pa vidi sta se desava.
 
Odgovor na temu

[es] :: Visual Basic 6 :: Mp3-Player

[ Pregleda: 2964 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.