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

Som No Delphi


Paulo Nobre

Pergunta

Alguém poderia me dar um exemplo detalhado de como tocar um som wave(mp3)no delphi. Por exemplo o arquivo som.wave toca quando clico num btn, melhor dizendo associar um som a um evento.No VB tenho que declarar uma API e usar a snd por exemplo. No Delphi, não tenho a mínima idéia. Andei buscando na web, mas não está fácil de encontrar.

Achei apenas isto://Inclua na seção uses: MMSystem

PlaySound('C:\ArqSom.wav', 1, SND_ASYNC);

Qual o significado?

Isto toca o som?

E para parar?

Se quiser que o arquivo de som esteja na pasta do executável,

tenho que indicar o caminho completo?

No Delphi, tenho o equivalente a app.path ou ChDir para mudar de diretório?

Desculpe a chuva de perguntas, mas é que tudo está relacionado.

Sou novato no assunto, agradeço a ajuda detalhada de quem se dispor.

Paulo Nobre

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

A MMSystem é responsável por tocar sons

É bom que você faça um som que dure só um segundo ou dois, aí você num se preocupa em quando ele vai parar.

Caso contrário, você pode usar algum componente botão q passa sons, fácil de achar

Link para o comentário
Compartilhar em outros sites

  • 0

Após algumas pesquisas estou na seguinte situação:

Estou querendo colocar um som no evento onclik de um botão.

O arquivo de som se chama som.wav e se encontra no diretório do exe do

programa por isso uso

ExtractFilePath(Application.ExeName)

que me fornece o caminho do aplicativo, no meu caso,

F:\Arquivos de programas\Borland\Delphi7\Projects\Testes\Teste de Som\

Como o arquivo de som se chama som.wav, faço

SndPlaySound('Caminho', SND_SYNC)

onde caminho foi definida como string e é igual a:

ExtractFilePath(Application.ExeName)+'Som.wav'

O som não toca

também não toca com

SndPlaySound(ExtractFilePath(Application.ExeName)+'som,wav',

SND_SYNC)

nem com

SndPlaySound('ExtractFilePath(Application.ExeName)'+'som,wav',

SND_SYNC)

toca se colocar direto

SndPlaySound('F:\Arquivos de

programas\Borland\Delphi7\Projects\Testes\Teste de Som\som.wav

', SND_SYNC)

Alguém pode dizer aonde estou errando.

obrigado

Paulo Nobre

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Diego --
Após algumas pesquisas estou na seguinte situação:

Estou querendo colocar um som no evento onclik de um botão.

O arquivo de som se chama som.wav e se encontra no diretório do exe do

programa por isso uso

ExtractFilePath(Application.ExeName)

que me fornece o caminho do aplicativo, no meu caso,

F:\Arquivos de programas\Borland\Delphi7\Projects\Testes\Teste de Som\

Como o arquivo de som se chama som.wav, faço

SndPlaySound('Caminho', SND_SYNC)

onde caminho foi definida como string e é igual a:

ExtractFilePath(Application.ExeName)+'Som.wav'

O som não toca

também não toca com

SndPlaySound(ExtractFilePath(Application.ExeName)+'som,wav',

SND_SYNC)

nem com

SndPlaySound('ExtractFilePath(Application.ExeName)'+'som,wav',

SND_SYNC)

toca se colocar direto

SndPlaySound('F:\Arquivos de

programas\Borland\Delphi7\Projects\Testes\Teste de Som\som.wav

', SND_SYNC)

Alguém pode dizer aonde estou errando.

obrigado

Paulo Nobre

Olá amigo, o problema no caso do comando SndPlaySound('ExtractFilePath(Application.ExeName)'+'som,wav',

SND_SYNC) é o seguinte: se o seu executável esta no caminho F:\Arquivos de

programas\Borland\Delphi7\Projects\Testes\Teste de Som, a concatenação que você fez ficaria assim: F:\Arquivos de

programas\Borland\Delphi7\Projects\Testes\Teste de Somsom.wav. Para resolver isso basta concatenar utilizando o \som.wav para concatenar.

Até

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Fabiano Nakamura - GO -GYN

'Paulo Nobre' post='98308' date='07/04/2004 - 23:48'

Após algumas pesquisas estou na seguinte situação:

Estou querendo colocar um som no evento onclik de um botão.

O arquivo de som se chama som.wav e se encontra no diretório do exe do

programa por isso uso

ExtractFilePath(Application.ExeName)

que me fornece o caminho do aplicativo, no meu caso,

F:\Arquivos de programas\Borland\Delphi7\Projects\Testes\Teste de Som\

Como o arquivo de som se chama som.wav, faço

SndPlaySound('Caminho', SND_SYNC)

onde caminho foi definida como string e é igual a:

ExtractFilePath(Application.ExeName)+'Som.wav'

O som não toca

também não toca com

SndPlaySound(ExtractFilePath(Application.ExeName)+'som,wav',

SND_SYNC)

nem com

SndPlaySound('ExtractFilePath(Application.ExeName)'+'som,wav',

SND_SYNC)

toca se colocar direto

SndPlaySound('F:\Arquivos de

programas\Borland\Delphi7\Projects\Testes\Teste de Som\som.wav

', SND_SYNC)

Alguém pode dizer aonde estou errando.

obrigado

Paulo Nobre

Link para o comentário
Compartilhar em outros sites

  • 0

Amigo, como vai. Estou respondendo pela primeira vez em forum.

penso que é isso que você quer: me retorne se deu certo.

/////////////////////////////////////

procedure TForm1.Button1Click(Sender: TObject);

begin

///Acrescente MMSystem na Uses do começo na Unit

PlaySound('C:\Arquivos de programas\nomedoarquivo.wav',1,SND_ASYNC);

end;

Link para o comentário
Compartilhar em outros sites

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...