[RESUELTO] seleccionar item de un ListBox por código
#1
Escrito 29 octubre 2009 - 10:58
Yo uso el código:
Listbox1.itemIndex:=Listbox1.itemIndex+1; //???
Gracias.
#2
Escrito 29 octubre 2009 - 11:10
Podrias decirnos en que evento tienes ese codigo?? y exactamente cuando quieres que el listbox cambie de valor?
#3
Escrito 29 octubre 2009 - 11:12
listbox1.ItemIndex := 0;
y en el OnClick de un botón, esto:
listbox1.ItemIndex := listbox1.ItemIndex+1; label25.Caption := listbox1.Items[listbox1.ItemIndex];
Nos podrías dar más información de en qué evento definiste tu código ?
Saludox !
P.D. Bienvenido a DelphiAccess !!!!
#4
Escrito 29 octubre 2009 - 11:23
procedure TPlayer.Sound1TimeChanging(Sender: TObject; Time: Integer); begin //******************************** Progressbar1.Max:=Sound1.GetTimeLength ; Progressbar1.position:=Sound1.GetCurrentTimePos; //Sound1.GetProgress; //******************************** if listbox1.ItemIndex=-1 then listbox1.ItemIndex:=0; Sound1.GetCurrentTimePos; Label2.Caption:=intToStr(Sound1.GetCurrentTimePos); Label3.Caption:=intToStr(Sound1.GetTimeLength); if sound1.GetCurrentTimePos=Sound1.GetTimeLength then sound1.Play(listbox1.Items[ListBox1.ItemIndex+1]); label4.Caption:=intToStr(listbox1.ItemIndex); { falta que el listbox cambie el foco al finalizar cada tema ya que el tema músical cambia bien} // end; // según creo el evento es cuando el tiempo transcurre se ejecutan cada una de las condiciones. // Sound es un componente gratis que reproduce varios formatos ya que tiene un dll , puede según el código hasta reproducir desde la red.
Gracias por la atención.
#5
Escrito 29 octubre 2009 - 11:29
Aquí :
procedure TPlayer.Sound1TimeChanging(Sender: TObject; Time: Integer); begin //******************************** Progressbar1.Max:=Sound1.GetTimeLength ; Progressbar1.position:=Sound1.GetCurrentTimePos; //Sound1.GetProgress; //******************************** if listbox1.ItemIndex=-1 then listbox1.ItemIndex:=0; Sound1.GetCurrentTimePos; Label2.Caption:=intToStr(Sound1.GetCurrentTimePos); Label3.Caption:=intToStr(Sound1.GetTimeLength); if sound1.GetCurrentTimePos=Sound1.GetTimeLength then begin // AQUI !!!! sound1.Play(listbox1.Items[ListBox1.ItemIndex+1]); label4.Caption:=intToStr(listbox1.ItemIndex); end; // Y AQUI !!!! { falta que el listbox cambie el foco al finalizar cada tema ya que el tema músical cambia bien} // end; // según creo el evento es cuando el tiempo transcurre se ejecutan cada una de las condiciones. // Sound es un componente gratis que reproduce varios formatos ya que tiene un dll , puede según el código hasta reproducir desde la red.
Saludox !
#6
Escrito 29 octubre 2009 - 11:34
ListBox1.Selected[ListBox1.ItemIndex+1];
Saludos.
#7
Escrito 29 octubre 2009 - 11:36
label4.Caption := listbox1.Items[listbox1.ItemIndex];
Saludox !
#8
Escrito 29 octubre 2009 - 11:41
Saludox !
#9
Escrito 29 octubre 2009 - 11:45
Saludos, soy nuevo en la comunidad, tengo un problema con la selección de un listbox.item mediante código, que al cambiar el item lo haga una solo vez, ya que a mi me cambia desde el primero hasta el último sin parar.
Yo uso el código:
Listbox1.itemIndex:=Listbox1.itemIndex+1; //???
Gracias.
Bienvenido, argu34. Espero que te sientas bien entre nosotros.
Según entiendo, la canción suena pero el item seleccionado avanza aunque la canción no haya terminado, por lo que corre hasta el final. Si es así, se debe a que pones en marcha la canción, la dll que usas posiblemente utiliza un thread y la canción empieza a sonar pero tu código continua hasta el final por lo que los items corren. Debes controlar un evento que se dispare al terminar la canción, para poner en él el código que haga avanzar el item sólo si la canción terminó de sonar.
Si es este tu caso, imagino que encontrarás la información suficiente en la documentación que acompañará a tu dll.
Saludos.
#10
Escrito 29 octubre 2009 - 12:00
casi siempre el vago trabaja doble.
Gracias!!!
#11
Escrito 29 octubre 2009 - 12:08
Muchas gracias Fenareth en verdad era que faltaban dos begin y end.
casi siempre el vago trabaja doble.
Gracias!!!
Bienvenido a la Comunidad DelphiAccess argu34.
Me alegra que se haya solucionado su problema. Voy a editar este tema para colocarle el status de [RESUELTO].
Salud OS
#12
Escrito 29 octubre 2009 - 12:21
Tengo que darles las gracias a todos los que me han atendido, pues no en todos los foros se coopera tan rápido .
De ahora en adelante, también yo trataré de ayudar a otros, aquí en está comunidad.
#13
Escrito 29 octubre 2009 - 12:31
Tengo que darles las gracias a todos los que me han atendido, pues no en todos los foros se coopera tan rápido .
De ahora en adelante, también yo trataré de ayudar a otros, aquí en está comunidad.
Será de verdad placentero compañero contar con tus aportaciones. Te comento que no solo puedes postear hilos de ayuda. Puedes crear temas en la taberna para esparcimiento de la comunidad y liberar un poco de estres. Además puedes subir tus utilerias en la sección de recursos y puedes también colaborar con tus trucos en la sección dedicada a ello.
Bienvenido a esta nuestra comunidad.
Saludos cordiales.
#14
Escrito 29 octubre 2009 - 12:32
Tengo que darles las gracias a todos los que me han atendido, pues no en todos los foros se coopera tan rápido .
De ahora en adelante, también yo trataré de ayudar a otros, aquí en está comunidad.
Sientete en casa y libre de participar.
Salud OS
#15
Escrito 02 noviembre 2009 - 09:09
ListBox1.Perform(lb_SetTopIndex,ListBox1.Items[Listbox1.ItemIndex+1], 0);
Saludos.