Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Slumpa fram ljudfiler

Postades av 2001-02-13 16:41:00 - Katarina Löfberg, i forum visual basic - allmänt, Tråden har 12 Kommentarer och lästs av 586 personer

Hej!
Jag är ny på forumet och ny på VB. Kommer nog att ställa en del "dumma" frågor. Hoppas att det är okej och att det inte bara är proffs här... :)

Jag vill ha en kommandoknapp som slumpar fram en wav-fil. Jag har lyckats ladda EN wav-fil med klick, men jag vet inte hur jag ska få programmet att slumpa fram ett av t ex 10 wav-filer...

Tacksam för hjälp.

Mvh Katarina


Svara

Sv: Slumpa fram ljudfiler

Postades av 2001-02-13 17:57:00 - Peter Holm

tja du kan göra på några olika sätt....

Ett är....

Option Explicit

Private Sub Command1_Click()
Randomize Timer 'Set randomSeed
Select Case (Int(10 * Rnd) + 1)
Case 1
'kod här för att spela wavfil 1
Case 2
'kod här för att spela wavfil 2
Case 3
'kod här för att spela wavfil 3
Case 4
'kod här för att spela wavfil 4
Case 5
'kod här för att spela wavfil 5
Case 6
'kod här för att spela wavfil 6
Case 7
'kod här för att spela wavfil 7
Case 8
'kod här för att spela wavfil 8
Case 9
'kod här för att spela wavfil 9
Case 10
'kod här för att spela wavfil 10
End Select
End Sub

============================================
Följande xempel skulle nog jag välja !
============================================

Option Explicit

Private Sub Command1_Click()
Dim wavFileName As String
Randomize Timer 'Set randomSeed
'istället för path skriver du sökväg till ljudfilerna
'exvis "C:\ljudfiler\" Exemplet nedan funkar bara om
'dina ljudfiler heter wav1.wav till wav10.wav Annars
'Måste du ändra i koden.
wavFileName = "path" & "wav" & CStr(Int(10 * Rnd) + 1) & ".wav"
'Nu har du i strängen wavFileName fullständig path och
'filnamn som du kan använda för att spela din ljudfil.
End Sub

lycka Till.
/peterh


Svara

Sv: Slumpa fram ljudfiler

Postades av 2001-02-13 18:00:00 - Andreas Hillqvist

Här kommer tre exempel på hur du kan göra:

* Skapa tre CommandButtons
* Klistra in följande kod i formuläret

Option Explicit

Private Const SND_ASYNC = &H1
Private Const SND_FILENAME = &H20000

Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long

Private Sub Command1_Click()
Dim FileNo As Integer
Randomize
FileNo = Int(9 * Rnd)
PlayWave "c:\File" & FileNo & ".wav"
End Sub

Private Sub Command2_Click()
Randomize
Select Case Int(9 * Rnd)
Case 0
PlayWave "c:\FileA.wav"
Case 1
PlayWave "c:\FileB.wav"
Case 2
PlayWave "c:\FileC.wav"
Case 3
PlayWave "c:\FileD.wav"
Case 4
PlayWave "c:\FileE.wav"
Case 5
PlayWave "c:\FileF.wav"
Case 6
PlayWave "c:\FileG.wav"
Case 7
PlayWave "c:\FileH.wav"
Case 8
PlayWave "c:\FileI.wav"
Case 9
PlayWave "c:\FileJ.wav"
End Select
End Sub

Private Sub Command3_Click()
Dim Files As Collection
Dim FileNo As Integer
Const Path = "C:\WINNT\Media\"
Randomize
Set Files = GetDir(Path & "*.Wav")
FileNo = Int(Files.Count * Rnd) + 1
PlayWave Path & Files(FileNo)

End Sub

Public Sub PlayWave(Filename As String)
Dim lReturn As Long
lReturn = PlaySound(Filename, 0&, SND_FILENAME Or SND_ASYNC)
End Sub

Public Function GetDir(Path As String) As Collection
Dim Filename As String
Set GetDir = New Collection

Filename = Dir(Path)
Do While Len(Filename)
GetDir.Add Filename
Filename = Dir
Loop
End Function


Svara

Sv: Slumpa fram ljudfiler

Postades av 2001-02-13 18:02:00 - Andreas Hillqvist

hpeter är en snabb en... :O)


Svara

Sv: Slumpa fram ljudfiler

Postades av 2001-02-13 19:21:00 - Peter Holm

jeayk vad menar du?? hpeter är en snabb en ?

/peterh <=> hpeter


Svara

Sv: Slumpa fram ljudfiler

Postades av 2001-02-13 19:43:00 - Andreas Hillqvist

Du hann skriva ditt inlägg innan mig... Komplinmang... :O)


Svara

Sv: Slumpa fram ljudfiler

Postades av 2001-02-13 19:57:00 - Katarina Löfberg

Wow, det gick fort! TACK! Hit kommer jag tillbaks! Nu ska vi se om jag får det att funka...:)
Kattis


Svara

Mer hjälp!

Postades av 2001-02-13 20:34:00 - Katarina Löfberg

Hej igen!
Kul, det funkar! Jag är jättetacksam. (Nu kommer ni aldrig att bli av med mej...:)

Hur som helst. Jag använder alternativ tre som Andreas skrev. Nu undrar jag vad man skriver för att inte anropa filerna på hårddisken utan i en undermapp till projektmappen.

Jag provade med
Const Path = App.Path & ("\ljudfiler")
och lite varianter på det, som man gör med bilder, men det funkade ju inte.

Antar att det är ganska simpelt. Jag sa ju att jag var nybörjade! :)


Svara

Sv: Mer hjälp!

Postades av 2001-02-13 22:19:00 - Andreas Hillqvist

Const anger att det är en konstant värde. Tillåter inte funktions anrop i uttrycket.

Testa med:

Dim Path as string
Path = App.Path & "\ljudfiler"


Svara

Funkade inte...

Postades av 2001-02-14 08:42:00 - Katarina Löfberg

Det gick inte... Den protesterar nu över den sista raden. :(

Private Sub Command1_Click()
Dim Files As Collection
Dim FileNo As Integer
Dim Path As String
Path = App.Path & "\ljudfiler"
Randomize
Set Files = GetDir(Path & "*.Wav")
FileNo = Int(Files.Count * Rnd) + 1
PlayWave Path & Files(FileNo)

End Sub


Svara

Sv: Funkade inte...

Postades av 2001-02-14 09:01:00 - Stefan Larsson

Hej.

Du har glömt följande kod som Andreas hade med:

Public Sub PlayWave(Filename As String)
Dim lReturn As Long
lReturn = PlaySound(Filename, 0&, SND_FILENAME Or SND_ASYNC)
End Sub

Public Function GetDir(Path As String) As Collection
Dim Filename As String
Set GetDir = New Collection

Filename = Dir(Path)
Do While Len(Filename)
GetDir.Add Filename
Filename = Dir
Loop
End Function

Klistra in den så kommer det nog att fungera.

/Stefan


Svara

Sv: Funkade inte...

Postades av 2001-02-14 09:05:00 - Katarina Löfberg

Nej, nej, den koden är med. Det funkar alltså när jag använder

Const Path = "c:\bla\bla\"

Men inte med

Dim Path As String
Path = App.Path & "\ljudfiler"

Jag tog bara med den kodsnutt där felet låg.


Svara

Sv: Funkade inte...

Postades av 2001-02-14 09:42:00 - Andreas Hillqvist

Ledsen att jag inte testade exemplet. Funktionen jag skrev för att retunera en katalog med wave filer, antar att sökvägen är avslutad med ett backslash.

I konstanten är det ett avslutande backslash:
Const Path = "c:\bla\bla<B>\</B>"

Men inte efter ljudfiler:
Dim Path As String
Path = App.Path & "\ljudfiler"

Skall alltså se ut något såhär:
Dim Path As String
Path = App.Path & "\ljudfiler<B>\</B>"


Eller så kan man lägga till en kontroll i funktionen...


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 616
27 953
271 709
5 527
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies