Bunter-Baron Geschrieben 21. Februar 2002 Geschrieben 21. Februar 2002 Hi Ihr alle ! Eine Frage? Ist es unter VB möglich eine Melodie etc. über den PC- Lautsprecher auszugeben? Oder gibt es einen Code dafür? Noch einfacher, gibt es ein tool dafür? Will meinen Chef ein bischen ärgern damit. Danke im vorraus Gruss B-B
Mister A Geschrieben 22. Februar 2002 Geschrieben 22. Februar 2002 also 'Beep' gibts natürlich! Das gibt dann den standard PC-Speaker Ton... wie das mit unterschiedlichen Frequenzen aussieht, keine Ahnung. Mit 'Beep' gehts nicht, der macht nur den einen Ton.
Marfi Geschrieben 22. Februar 2002 Geschrieben 22. Februar 2002 Also zu alten QBasic zeiten gab es PLAY "...." welches eine Tonfolge ausgegeben hat.
KarlBerg Geschrieben 22. Februar 2002 Geschrieben 22. Februar 2002 Hi, ist alles möglich Private Declare Function Beep Lib "kernel32.dll" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Boolean Private Sub Command1_Click() Dim TonHoehe As Integer Dim TonLaenge As Integer TonHoehe = 50 TonLaenge = 150 beeped = Beep(TonHoehe, TonLaenge) End Sub MfG KarlBerg
KarlBerg Geschrieben 22. Februar 2002 Geschrieben 22. Februar 2002 Hi, hab noch mehr gefunden. Für die, die abgestimmte Töne wollen. (Bin nicht 100% sicher, dass die Frequenzen stimmen) Dafür braucht man: -btnGenau (Button) -CmbOct (ComboBox) -CmbNote (ComboBox) Private Declare Function Beep Lib "kernel32.dll" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Boolean Dim beeped As Boolean Private Sub btnGenau_Click() Dim TonLaenge As Integer Dim Note As String Dim Octave As Integer Dim Freq As Integer TonLaenge = 100 Octave = CmbOct.Text Note = CmbNote.Text Select Case Note Case "A" Freq = 27.5 Case "A#" Freq = 29.1352 Case "B" Freq = 30.8677 Case "C" Freq = 32.7032 Case "C#" Freq = 34.6478 Case "D" Freq = 36.7081 Case "D#" Freq = 38.8909 Case "E" Freq = 41.2034 Case "F" Freq = 43.6535 Case "F#" Freq = 46.2493 Case "G" Freq = 48.9994 Case "G#" Freq = 51.9131 Case "A2" Freq = 55 End Select beeped = Beep(CLng(Freq) * 2 ^ (CLng(Octave) - 1), TonLaenge) End Sub Private Sub Form_Load() CmbNote.AddItem "A" CmbNote.AddItem "A#" CmbNote.AddItem "B" CmbNote.AddItem "C" CmbNote.AddItem "C#" CmbNote.AddItem "D" CmbNote.AddItem "D#" CmbNote.AddItem "E" CmbNote.AddItem "F" CmbNote.AddItem "F#" CmbNote.AddItem "G" CmbNote.AddItem "G#" CmbNote.AddItem "A2" CmbNote.ListIndex = 0 For i = 2 To 11 CmbOct.AddItem i Next i CmbOct.ListIndex = 0 End Sub MfG KarlBerg
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden