Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-07-2008
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 20
Khronos Va por buen camino
Cuando pulsas stop tienes que parar el timer, cuando experimenté con este componente nunca utilice sus feos botones .
Creaba unos TSpeedButton con unas bonitas imagenes y ponia el TMediaPlayer.visible:=false.
En el evento del boton de stop ponia:

Código Delphi [-]
begin
Timer1.enabled:=false;
end;

Cuando le volvia a dar al play lo activaba de nuevo. Pero si estas utilizando los botones propios del componente, yo haria algo como esto:

Código Delphi [-]
procedure TForm1.MediaPlayer1Click(Sender: TObject; Button: TMPBtnType;
  var DoDefault: Boolean);
begin
                If Button=btStop then Timer1.enabled:=false 
end;

PD: Copiar y pegar codigo sin saber lo que hace no sirve de nada si no se entiende, buscate un buen manual de delphi y empieza por cosas mas sencillas.

Salu2
Responder Con Cita
  #2  
Antiguo 01-07-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Ctrl+F5 -> watches o bien boton derecho sobre el identificador. Con el F5, break points. F7,F8 trace into, trace over. Las opciones de debug tienen que estar activadas en options->project->compiler options o algo asi...En tu caso, pulsaria F5 para poner un breakpoint en la linea siguiente del primer 'if' (begin), y ctrl+f5 encima MediaPlayer1.Position, ctrl+F5 encima mediaplayer1.Lenght. otra manera practica de evaluar es poner un par de labels y con algun evento irlas actualizando, luego ya las quitas...

Código Delphi [-]

label1.Caption := inttostr(MediaPlayer1.Position);
label2.Caption := inttostr(MediaPlayer2.Lenght);

Última edición por coso fecha: 01-07-2008 a las 23:06:13.
Responder Con Cita
  #3  
Antiguo 01-07-2008
Avatar de mattgaviota
mattgaviota mattgaviota is offline
Registrado
 
Registrado: jun 2008
Ubicación: Salta, Argentina
Posts: 4
Poder: 0
mattgaviota Va por buen camino
Gracias por responder khronos y coso. Khronos es justo lo que necesitaba. Funciono muy bien. Yo tambien uso otros botones para usar el mediaplayer, y realmente estoy aprendiendo, asi que cuando uso codigo o parte del codigo que hizo otra persona me fijo bien en lo que hace.
Responder Con Cita
  #4  
Antiguo 02-07-2008
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 20
Khronos Va por buen camino
Para obtener la duracion y la posicion actual de cualquier canción usas las propiedades length y position como bien te dijo coso. Haciendo las operaciones adecuadas podemos conseguir el formato x:xx:xx.

Código Delphi [-]
function ObtenerDuracion(milisegundos: integer) : string;
var
min, sec, hor: integer;
segundos, minutos: string;
begin

sec:= milisegundos div 1000;
min:= sec div 60;
hor:= min div 60;
sec:= sec mod 60;

segundos:=inttostr(sec);
minutos:=inttostr(min);

if min<10 then begin
  minutos:='0' + inttostr(min);
end;
if sec<10 then begin
segundos:='0' + inttostr(sec);
end;

result:= inttostr(hor) +':' +minutos + ':' + segundos;
end;

Cada vez que cargues una cancion actualizas el label de la duracion total de la pista, y en el timer harias algo asi:

Código Delphi [-]
procedure TForm1.Timer1Timer(Sender: TObject);
var
r:integer;
begin
If MediaPlayer1.mode=mpplaying then LabelPosicion.caption:=ObtenerDuracion(MediaPlayer1.position);
if mediaplayer1.Mode=mpstopped then
begin
If MediaPlayer1.position=mediaplayer1.Length then
begin
  If checkbox1.Checked=false then
  begin
   If ListBox1.itemindex= ListBox1.items.count then
      ListBox1.itemindex:= -1;
   ListBox1.itemindex:= ListBox1.itemindex + 1;
   listbox2.ItemIndex:=listbox2.ItemIndex + 1;
  end;
  If checkbox1.Checked=true then
  begin
   Randomize;
   r:= Random(ListBox1.items.count);
   listbox1.ItemIndex:=r;
   listbox2.ItemIndex:=r;
  end;
reproducirdelistbox(listbox1.ItemIndex);
end;
end;
end;

Salu2
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 generar una cadena aleatoria? JuanErasmo C++ Builder 3 16-06-2008 20:18:33
cleanScreen,letra aleatoria yessika19 Varios 13 04-11-2007 22:14:22
Imagen aleatoria en Fastreport jegrebahe1 Impresión 0 10-06-2007 01:04:40
La PC se Reseta sola y de manera aleatoria Enan0 Varios 5 25-04-2006 17:34:21
Hacer que me saque 50 números de forma aleatoria james_dean Varios 4 16-05-2005 22:20:15


La franja horaria es GMT +2. Ahora son las 10:27:51.


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