Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: VB.NET: CD-soitin

Juice [25.08.2004 21:02:31]

#

CD-Soitin Visual Basic .NETille. Käyttää WinApin mciSendString-funktioita. Koodissa on virheenkäsittely Visual Basic .NETin uudella Try-lausekkeella. Vaatii formiin viisi buttonia: btnPlay, btnPause, btnEteen, btnTaakse ja btnStop. Tehty koska netissä liikkeellä olevat soittimet ovat yksinkertaisesti niin huonoja tai liian täynnä ominaisuuksia. Tätä kun hieman kustomoi niin saa toimimaan Visual Basicin aikaisemmissa versiossa, saa AVI-, MP3-, WAV- ja MIDI-tuen.
HUOM! Lisää formin Closed-propertyksi btnStopClick tai tee sama käsin editoimalla Windows Form Designer Generated Codea(listaus 2).

'''''''''''''''''''''''''''''''''''
'CD-soitin (c) Juice 2004         '
'http://www.koti.mbnet.fi/minigrip'
'''''''''''''''''''''''''''''''''''
Private Declare Function mciSendString Lib "winmm.dll" _
       Alias "mciSendStringA" _
      (ByVal lpstrCommand As String, _
       ByVal lpstrReturnString As String, _
       ByVal uReturnLength As Long, _
       ByVal hwndCallback As Long) As Long

'pausen toimintaan ja raidan kasvatukseen
Dim pause As Integer
Dim raita As Integer

Private Sub BtnPauseClick(sender As System.Object, e As System.EventArgs)
        mciSendString("Pause cd1", 0&, 0, 0)
        pause=1
End Sub

Private Sub BtnPlayClick(sender As System.Object, e As System.EventArgs)
        'Jos pause päällä
        If pause=1 Then
                mciSendString("Resume cd1", 0&, 0, 0)
                pause=0
        Else
        'Virheenkäsittely Try-lausekkeella
                Try
                        mciSendString("Open CDAudio alias cd1", 0&, 0, 0)
                        mciSendString("Set cd1 time format tmsf", 0&, 0, 0)
                        mciSendString("Play cd1", 0&, 0, 0)
                        raita=1
                Catch
                        MessageBox.Show("Aseta CD asemaan.")
                End Try
        End If
End Sub

'Kun painetaan Stop tai formi suljetaan.
Private Sub BtnStopClick(sender As System.Object, e As System.EventArgs)
        mciSendString("Stop cd1", 0&, 0, 0)
        'Tämä on tärkeää, muuten jää päälle.
        mciSendString("Close cd1", 0&, 0, 0)
End Sub

Private Sub BtnTaakseClick(sender As System.Object, e As System.EventArgs)
        'vähennä yksi ja sitten siirry raitaan. Ei mene alle nollan: Jos yritetään niin rupeaa soittamaan
    'raitaa 1 alusta.
        raita -= 1
        If raita=0 Then raita=1
        mciSendString("Play cd1 from "&raita, 0&, 0, 0)
End Sub

Private Sub BtnEteenClick(sender As System.Object, e As System.EventArgs)
        raita += 1
        mciSendString("Play cd1 from "&raita, 0&, 0, 0)
End Sub
'Editoi Windows Forms Designer Generated Codea. Muuten jää
'soimaan päälle, kun formia suljetaan.

'MainForm
'
AddHandler Closed, AddressOf Me.BtnStopClick

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta