Ir para conteúdo
Fórum Script Brasil
  • 0

Piano Digital


isaikki

Pergunta

Olá galera, estou gostando mesmo deste fórum, tem matado muitas dúvidas minhas, mesmo pela dúvida de outras pessoas, parabéns a todos!

Fiz um programinha que simula um teclado digital, mas não consigo colocar as notas musicais o mais próximo do normal possível.

Se alguém se interessar em ajudar, aí vai o código:

# -*- coding: cp1252 -*-
from Tkinter import *
import winsound

class piano:
    def __init__(self, root):

        toca.title('Piano')
        
        self.frame01=Canvas(root)
        self.frame01.pack()
        self.frame=Frame(root)
        self.frame.pack()
        
        #self.frame.bind('<D>', self.do)

        self.msg=Label(self.frame01, text='Nota tocada: ', bg='dodgerblue', width=29)
        self.msg.pack()

        self.bot01=Button(self.frame, text='DÓ ', height=5, command=self.do, bg='brown')
        self.bot01.pack(side=LEFT)

        self.bot02=Button(self.frame, text='RÉ ', height=5, command=self.re, bg='white')
        self.bot02.pack(side=LEFT)

        self.bot03=Button(self.frame, text='MI ', height=5, command=self.mi, bg='brown')
        self.bot03.pack(side=LEFT)

        self.bot04=Button(self.frame, text='FA ', height=5, command=self.fa, bg='white')
        self.bot04.pack(side=LEFT)

        self.bot05=Button(self.frame, text='SOL', height=5, command=self.sol, bg='brown')
        self.bot05.pack(side=LEFT)

        self.bot06=Button(self.frame, text='LA ', height=5, command=self.la, bg='white')
        self.bot06.pack(side=LEFT)

        self.bot07=Button(self.frame, text='SI ', height=5, command=self.si, bg='brown')
        self.bot07.pack(side=LEFT)

    def do(self):
        self.msg['text']='Nota tocada: DÓ'
        som(500,130)
        
    def re(self):
        self.msg['text']='Nota tocada: RÉ'
        som(800,130)

    def mi(self):
        self.msg['text']='Nota tocada: MI'
        som(1100,130)

    def fa(self):
        self.msg['text']='Nota tocada: FA'
        som(1400,130)

    def sol(self):
        self.msg['text']='Nota tocada: SOL'
        som(1700,130)

    def la(self):
        self.msg['text']='Nota tocada: LA'
        som(2000,130)

    def si(self):
        self.msg['text']='Nota tocada: SI'
        som(2300,130)

som=winsound.Beep
toca=Tk()
piano(toca)
toca.mainloop()

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...