Faite votre musique (maj)

Soyez le premier à donner votre avis sur cette source.

Vue 5 213 fois - Téléchargée 802 fois

Description

permet d'editer ca propre musique ou encore d'ouvrir des musique deja existante au format .mcx
Avec 88 morceaux de musique dans le zip de quoi faire chanter votre UC

Source / Exemple :


Private Declare Function Beep Lib "kernel32" ( _
                 ByVal dwFreq As Long, _
                 ByVal dwDuration As Long) As Long
Dim note As Variant

Private Sub Form_KeyPress(KeyAscii As Integer)
note = KeyAscii
Select Case note
    Case Asc("a")
        Text1.Text = Text1.Text & 10
    Case Asc("z")
        Text1.Text = Text1.Text & 11
    Case Asc("3")
        Text1.Text = Text1.Text & 20
    Case Asc("e")
        Text1.Text = Text1.Text & 12
    Case Asc("4")
        Text1.Text = Text1.Text & 21
    Case Asc("r")
        Text1.Text = Text1.Text & 13
    Case Asc("5")
        Text1.Text = Text1.Text & 22
    Case Asc("t")
        Text1.Text = Text1.Text & 14
    Case Asc("w")
        Text1.Text = Text1.Text & 30
    Case Asc("s")
        Text1.Text = Text1.Text & 40
    Case Asc("x")
        Text1.Text = Text1.Text & 31
    Case Asc("d")
        Text1.Text = Text1.Text & 41
    Case Asc("c")
        Text1.Text = Text1.Text & 32
    Case Asc("v")
        Text1.Text = Text1.Text & 33
    Case Asc("g")
        Text1.Text = Text1.Text & 42
    Case Asc("b")
        Text1.Text = Text1.Text & 34
    Case Asc("h")
        Text1.Text = Text1.Text & 43
    Case Asc("n")
        Text1.Text = Text1.Text & 35
    Case Asc("j")
        Text1.Text = Text1.Text & 44
    Case Asc("k")
        Text1.Text = Text1.Text & 36
    Case Asc("Y")
        Text1.Text = Text1.Text & 50
    Case Asc("7")
        Text1.Text = Text1.Text & 60
    Case Asc("u")
        Text1.Text = Text1.Text & 51
    Case Asc("8")
        Text1.Text = Text1.Text & 61
    Case Asc("i")
        Text1.Text = Text1.Text & 52
    Case Asc("o")
        Text1.Text = Text1.Text & 53
    Case Asc("0")
        Text1.Text = Text1.Text & 62
    Case Asc("p")
        Text1.Text = Text1.Text & 54
    Case Asc("l")
        Text1.Text = Text1.Text & 63
    Case Asc("m")
        Text1.Text = Text1.Text & 55
End Select
End Sub

Private Sub Form_Load()
Me.Top = Form2.Top - Me.Height
Me.Left = Form2.Left
Form4.Show
End Sub

Private Sub Form_Unload(Cancel As Integer)
Unload Form4
End Sub

Private Sub Label10_Click()
Text1.Text = Text1.Text & "32"
Call joue(32)
End Sub

Private Sub Label11_Click()
Text1.Text = Text1.Text & "33"
Call joue(33)
End Sub

Private Sub Label12_Click()
Text1.Text = Text1.Text & "34"
Call joue(34)
End Sub

Private Sub Label13_Click()
Text1.Text = Text1.Text & "35"
Call joue(35)
End Sub

Private Sub Label14_Click()
Text1.Text = Text1.Text & "36"
Call joue(36)
End Sub

Private Sub Label15_Click()
Text1.Text = Text1.Text & "50"
Call joue(50)
End Sub

Private Sub Label16_Click()
Text1.Text = Text1.Text & "51"
Call joue(51)
End Sub

Private Sub Label17_Click()
Text1.Text = Text1.Text & "52"
Call joue(52)
End Sub

Private Sub Label18_Click()
Text1.Text = Text1.Text & "53"
Call joue(53)
End Sub

Private Sub Label19_Click()
Text1.Text = Text1.Text & "54"
Call joue(54)
End Sub

Private Sub Label20_Click()
Text1.Text = Text1.Text & "55"
Call joue(55)
End Sub

Private Sub Label24_Click()
Text1.Text = Text1.Text & "20"
Call joue(20)
End Sub

Private Sub Label25_Click()
Text1.Text = Text1.Text & "21"
Call joue(21)
End Sub

Private Sub Label26_Click()
Text1.Text = Text1.Text & "22"
Call joue(21)
End Sub

Private Sub Label27_Click()
Text1.Text = Text1.Text & "40"
Call joue(40)
End Sub

Private Sub Label28_Click()
Text1.Text = Text1.Text & "41"
Call joue(41)
End Sub

Private Sub Label29_Click()
Text1.Text = Text1.Text & "42"
Call joue(42)
End Sub

Private Sub Label3_Click()
Text1.Text = Text1.Text & "10"
Call joue(10)
End Sub

Private Sub Label30_Click()
Text1.Text = Text1.Text & "43"
Call joue(43)
End Sub

Private Sub Label31_Click()
Text1.Text = Text1.Text & "44"
Call joue(44)
End Sub

Private Sub Label32_Click()
Text1.Text = Text1.Text & "60"
Call joue(60)
End Sub

Private Sub Label33_Click()
Text1.Text = Text1.Text & "61"
Call joue(61)
End Sub

Private Sub Label34_Click()
Text1.Text = Text1.Text & "62"
Call joue(62)
End Sub

Private Sub Label35_Click()
Text1.Text = Text1.Text & "63"
Call joue(63)
End Sub

Private Sub Label4_Click()
Text1.Text = Text1.Text & "11"
Call joue(11)
End Sub

Private Sub Label5_Click()
Text1.Text = Text1.Text & "12"
Call joue(12)
End Sub

Private Sub Label6_Click()
Text1.Text = Text1.Text & "13"
Call joue(13)
End Sub

Private Sub Label7_Click()
Text1.Text = Text1.Text & "14"
Call joue(14)
End Sub

Private Sub Label8_Click()
Text1.Text = Text1.Text & "30"
Call joue(30)
End Sub

Private Sub Label9_Click()
Text1.Text = Text1.Text & "31"
Call joue(31)
End Sub

Function joue(note2 As Integer)
Select Case note2
        Case 10
        a = Beep(165, 200)
        Case 11
        a = Beep(175, 200)
        Case 20
        a = Beep(185, 200)
        Case 12
        a = Beep(196, 200)
        Case 21
        a = Beep(208, 200)
        Case 13
        a = Beep(220, 200)
        Case 22
        a = Beep(233, 200)
        Case 14
        a = Beep(247, 200)
        Case 30
        a = Beep(262, 200)
        Case 40
        a = Beep(277, 200)
        Case 31
        a = Beep(294, 200)
        Case 41
        a = Beep(311, 200)
        Case 32
        a = Beep(330, 200)
        Case 33
        a = Beep(349, 200)
        Case 42
        a = Beep(370, 200)
        Case 34
        a = Beep(392, 200)
        Case 43
        a = Beep(415, 200)
        Case 35
        a = Beep(440, 200)
        Case 44
        a = Beep(466, 200)
        Case 36
        a = Beep(494, 200)
        Case 50
        a = Beep(523, 200)
        Case 60
        a = Beep(554, 200)
        Case 51
        a = Beep(587, 200)
        Case 61
        a = Beep(622, 200)
        Case 52
        a = Beep(659, 200)
        Case 53
        a = Beep(698, 200)
        Case 62
        a = Beep(740, 200)
        Case 54
        a = Beep(784, 200)
        Case 63
        a = Beep(831, 200)
        Case 55
        a = Beep(880, 200)
End Select
End Function

Conclusion :


programme sans pretention, mais je me suis amuser en le programment.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
12
Date d'inscription
mercredi 10 octobre 2007
Statut
Membre
Dernière intervention
23 mars 2011

Salut, je voudrais bien l'utiliser mais cela m'est impossible, je ne dispose que de Virtual basic 2008 et quand il fait la convertion vb6 vers vb8, il dit qu'il manque pause.bas alors qu'il y est, donc impossible a ouvrir, tu pourrais le compiler si c'est possible car pour l'instant je ne peut absolument pas l'ouvrir.
Messages postés
1
Date d'inscription
dimanche 25 mars 2007
Statut
Membre
Dernière intervention
26 février 2010

Concrètement, comment utiliser ce programme ? Il n'y a pas une version compilée ?
Messages postés
48
Date d'inscription
dimanche 17 juin 2001
Statut
Membre
Dernière intervention
11 décembre 2008

Bonne initiative d'améliorer le code.
Messages postés
93
Date d'inscription
lundi 3 juillet 2006
Statut
Membre
Dernière intervention
25 juin 2010

euh CDbl(nbDemi_tons) à la place de CDbl(ConvertNote(mNote)), excusez-moi.
Messages postés
93
Date d'inscription
lundi 3 juillet 2006
Statut
Membre
Dernière intervention
25 juin 2010

Belle source,
cependant je pense qu'un calcul des fréquences à partir de la note serait plus simple : (cela éviterait les dizaines de lignes à la fin)
Public Sub JouerNote(ByVal nbDemi_tons As Integer)
Dim Freq As Double
Freq = 440 * ((2 ^ (1 / 12)) ^ CDbl(ConvertNote(mNote)))
Call Beep(CLng(Freq), 200)
End Sub
(nbDemi_tons étant le nombre de demi-tons par rapport au La de référence (440 Hz))

Bonne continuation ;)
Afficher les 21 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.