Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-12-2007
gerardorom gerardorom is offline
Miembro
 
Registrado: dic 2007
Posts: 22
Poder: 0
gerardorom Va por buen camino
Ayuda soy novato, ¿COmo cargo el nombre de un archivo wav?

Ayuda por favor, mi proyecto finde carrera esta en juego. Tengo que hacer una aplicación, tome un .wav, le aplique un efecto, y lo debuelva por los altavoces. No he usado nunca builder, se "leer" un wav como fichero binario, y reproducirlo con la API de windows, pero, ¿como hago para que el usuario eliga el archivo .wav a cargar? es decir, al "fread" le tengo que pasar la cadena de caracteres del archivo a leer... ¿como lo hago?



Mil gracias de antemano... si alguien se presta a resolverbe dudillas faciles de este estilo le estare eternamente agradecido, me queda poco tiempo

Gracias!!
Responder Con Cita
  #2  
Antiguo 07-12-2007
Avatar de oracle
oracle oracle is offline
Miembro
 
Registrado: feb 2005
Posts: 99
Poder: 20
oracle Va por buen camino
Smile

Asumiendo que estas realizando una app visual en CBuilder seria bueno que consultaces los componentes que tiene la Paleta Dialogs, ahi encontraras lo que necesitas....



Saludos
__________________
El único hombre que no se equivoca es el que nunca hace nada.
Responder Con Cita
  #3  
Antiguo 10-12-2007
lfb lfb is offline
Miembro
 
Registrado: dic 2007
Posts: 29
Poder: 0
lfb Va por buen camino
Thumbs up

Bueno colega yo tambien soy nuevo en la programacion pero pienso que te puedo ayudar en una parte
Mira:
Tu puedes instalar un componente ActiveX que se llama Windows Media Players en el cual puedes reproducir el archivo wav

Para instalar este componente en la barra de menu Componentes en "Import ActiveX Control" ahi en un listBox al final es que aparece este componente luego lo seleccionas y despues en el boton "Install"
Tienes que mirar en que paleta lo vas a instalar, predeterminado viene en la paleta ActiveX
Bueno despues que los instalas lo seleccionas en la paleta que seleccionaste y lo insertas en la Form este componente tiene una propiedad que se llama FileName si te das cuenta quiere decir nombre del archivo debes poner la dirección del archivo a reproducir
Si quieres que el usuario seleccione el archivo que quiere reproducir debes insertar un OpenDialog en la paleta Dialogs si nunca has trabajado con este componente me puedes escribir a esta dirección sadis@infosol.gtm.sld.cu para explicarte entonces como trabajar con el.

Bueno saludos y espero que esto te haya servido para algo
Responder Con Cita
  #4  
Antiguo 11-12-2007
Avatar de Gabo
[Gabo] Gabo is offline
Miembro Premium
 
Registrado: mar 2007
Ubicación: Murcia (España)
Posts: 684
Poder: 18
Gabo Va por buen camino
No sé si gerardorom ya habrá resuelto su problema o no, pero de su pregunta, deduzco que el único problema que tenía era que el usuario eligiera el archivo a ejecutar, que tal como han indicado oracle y lfb se resuelve con un OpenDialog de la paleta Dialogs.

Usarlo es muy sencillo, de hecho al darle a F1 sobre el control te encuentras con un enlace que dice "Using TOpenDialog" donde te muestra lo siguiente:

Cita:
Código:
 
if(OpenDialog1->Execute()){
   filename = OpenDialog1->FileName;
};
This code will show the dialog box and if the user presses the OK button, it will copy the name of the file into a previously declared AnsiString variable named filename.
Al usar el método Execute() se muestra un "cuadro de diálogo" donde el usuario elige el archivo, y si hace click en Aceptar, el archivo que haya elegido quedará guardado en la propiedad FileName.

Un consejo para gerardorom, cierto es que han pasado sólo 4 días y tal vez no hayas podido entrar todavía al foro, pero acostúmbrate a continuar los hilos que creas, indicando tus progresos, si has solucionado el problema o no, y agradeciendo al que te ha ayudado. Por supuesto, lee la Guía de estilo.

Cita:
Empezado por lfb Ver Mensaje
Si quieres que el usuario seleccione el archivo que quiere reproducir debes insertar un OpenDialog en la paleta Dialogs si nunca has trabajado con este componente me puedes escribir a esta dirección s a d i s @ i n f o s o l . g t m . s l d . c u para explicarte entonces como trabajar con el.

Bueno saludos y espero que esto te haya servido para algo
Hola lfb, se te ve con muchas ganas de participar y eso es muy bueno. De todas formas, te invito a leer (si todavía no lo has hecho) la Guía de estilo. En vez de solucionar los problemas mediante correos privados, utiliza el hilo creado, ya que éste es leído por otros usuarios que se pueden beneficiar también de él.

Además, te aconsejo no pongas tu dirección de correo así tan "libremente".
__________________
Saludos,
Gabo

A menos que se indique lo contrario, el código estará hecho en C++Builder.
Responder Con Cita
  #5  
Antiguo 13-12-2007
gerardorom gerardorom is offline
Miembro
 
Registrado: dic 2007
Posts: 22
Poder: 0
gerardorom Va por buen camino
Muchisimas gracias! Perdon por tardar, es que cuando me atasco pues me pongo a trabajar en otra cosa para no perder el tiempo (estaba liado con la memoria jiji). Se ve bastante sencillo, lo voy a intentar, ya os contare,

¡Saludos y , de nuevo, gracias!
Responder Con Cita
  #6  
Antiguo 13-12-2007
gerardorom gerardorom is offline
Miembro
 
Registrado: dic 2007
Posts: 22
Poder: 0
gerardorom Va por buen camino
Bien!!!!! ¡Lo he conseguido! He tenido que hacer una conversion de Ansistring a char despues pero no me ha dado problemas. Pero ahora me surge otra duda que no se si continuarla en este post o abrir uno nuevo. Bueno os la explico y si eso pues me deciis que lo mueva a un nuevo post:


Mi programa por ahora tiene un boton abrir (donde se elige un arcchivo wav) y otro boton "play" donde lo re produce, atraves de la libreria Api de windows (leyendo el fichero como binario con fread y procesandolo muestra a muestra con una serie de buffer y una serie de bucles for).

He creado otros dos botones "pause" y "restart" donde he incluido unas funciones del Api que supuestamente realizan estas funciones, pero cuando le doy a "play" no me permite pulsar ningun otro boton (esdecir, no sale de la rutina asociada al click de ese boton hasta que no termina de reproducir).

¿Como puedo hacer que salte de esa rutina del botton1 al botton2, y que luego , al pulsar "restart" vuelva al punto donde se quedó??

Perdonen mi ignorancia pero me encuentro bastante perdido en esto de la programacion orientada a eventos, y no encuentro ningun tutorial que me explique esto bien.

Muchisimas gracias de nuevo por la ayuda prestada.
Responder Con Cita
  #7  
Antiguo 14-12-2007
Avatar de Gabo
[Gabo] Gabo is offline
Miembro Premium
 
Registrado: mar 2007
Ubicación: Murcia (España)
Posts: 684
Poder: 18
Gabo Va por buen camino
Cita:
Empezado por gerardorom Ver Mensaje
Pero ahora me surge otra duda que no se si continuarla en este post o abrir uno nuevo. Bueno os la explico y si eso pues me deciis que lo mueva a un nuevo post:
Será mejor que abras otro hilo, ya que tu nueva pregunta no tiene nada que ver con el título ni con la pregunta inicial.

Cita:
Empezado por gerardorom Ver Mensaje
He creado otros dos botones "pause" y "restart" donde he incluido unas funciones del Api que supuestamente realizan estas funciones, pero cuando le doy a "play" no me permite pulsar ningun otro boton (esdecir, no sale de la rutina asociada al click de ese boton hasta que no termina de reproducir).

¿Como puedo hacer que salte de esa rutina del botton1 al botton2, y que luego , al pulsar "restart" vuelva al punto donde se quedó??
Cuando expliques tu problema en el otro hilo, será mejor que pongas el código que ocupas en ese botón, para que el resto pueda ver donde esta el error y te pueda ayudar.

Cita:
Empezado por gerardorom Ver Mensaje
Perdonen mi ignorancia pero me encuentro bastante perdido en esto de la programacion orientada a eventos, y no encuentro ningun tutorial que me explique esto bien.
Seguro que en el FTP encontrarás buenos libros, manuales, etc.
__________________
Saludos,
Gabo

A menos que se indique lo contrario, el código estará hecho en C++Builder.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como cargo archivo ayuda .hlp Manuel Varios 2 07-05-2006 20:12:45
Como en un FileListBox cambiar el nombre de un archivo JuanErasmo C++ Builder 4 12-10-2005 18:49:49
como saber numero de linea, nombre de archivo,funcion por codigo orfeo OOP 0 30-07-2004 18:42:15
como cargo una imagen omy Gráficos 3 28-11-2003 20:44:44
Como Cargo un DbListBox IcebergDelphi OOP 6 12-11-2003 22:53:02


La franja horaria es GMT +2. Ahora son las 05:04:36.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi