Como faço para criar um aplicativo no Quickly e reproduzir um som quando um botão é clicado no aplicativo?

2

Existe alguma maneira que eu possa fazer um aplicativo no qual um botão feito no Glade possa ser clicado para reproduzir um som personalizado e reconfigurável?

    
por Joey Blanco 12.12.2012 / 19:15

1 resposta

2

Você precisaria conectar o sinal 'activate' do botão a uma função de handler que então chama uma biblioteca para tocar um som. Para a parte de reprodução de sons, você pode usar qualquer um dos módulos listados aqui

No glade, selecione o botão, escolha os sinais e insira um nome para o manipulador de funções:

Em seguida, no seu código python para a janela, crie a função (on_iconbutton_activate no meu exemplo). Aqui está um exemplo que faz apenas uma chamada do sistema para tocar uma campainha:

import os
....otherstuff...

def on_iconbutton_activate(self,widget,data=None):
    os.system("/usr/bin/canberra-gtk-play --id='bell'")

EDIT: Para tornar o som redefinível, você precisará extrair a opção de algum lugar. Basta usar uma variável para armazenar a escolha (um nome de arquivo para algum módulo ou id para canberra-gtk-play), você pode armazenar a variável em algo como self.sound e referenciá-la na função (desde que você passou self para ela) ), ou atualize a variável de algum widget quando o botão é clicado.

    
por Ian B. 12.12.2012 / 19:39