FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
generar listado de horas
Hola, me gustaria saber como puedo hacer para que en un combobox me aparezca para poder seleccionar una hora de entre una hora de comienzo, otra de fin y un intervalo que previamente selecciono.
Es decir, en un edit pongo la hora de inicio, las 09:00, en otro la de fin, las 22:00, y en otro edit pongo el intervalo en minutos, 5 minutos. Yo lo que querria es que en el combobox me saliera para elegir 9:00, 9:05, 9:10, 9:15, etc. Alguien me podria ayudar?? Es que todo lo que he intentado hasta ahora no me resulta tal y como yo quiero. Un saludo y gracias anticipadas a todos! |
#2
|
||||
|
||||
Más o menos podría ser una cosa así (faltaría afinarlo un poco, pero bueno, para que pilles la idea)
Espero que te sea de ayuda
__________________
Si no tienes algo que decir más importante que el silencio, cállate |
#3
|
||||
|
||||
supongo que una vez que tienes hora de inicio y hora de fin e intervalo es fácil hazte dos while encadenados; uno que vaya de hora inicio a hora fin aumentando de uno en uno, y en el otro que vaya aumentando hasta sesenta con el intervalo definido, y vas metiendo los valores en el combobox.
Saludos, Tony |
#4
|
|||
|
|||
Al final ya he conseguido lo que me proponia de la siguiente forma:
Código:
procedure TForm2.dbComboBox1Enter(Sender: TObject); var horaini,horafin,hora:TTime; intervalo:double; horastr,horamax:string; begin intervalo:=1/1440*StrToInt(Edit2.Text); horaini:=StrToTime(Edit3.Text); horafin:=StrToTime(Edit4.Text)-intervalo; DBCombobox1.Items.Clear; While Horaini<HoraFin do begin horastr:=TimeToStr(horaini); //guardamos la hora en la variable horastr:=Copy(horastr,1,Length(Horastr)-3); //le quitamos los ultimos digitos (:00) DBComboBox1.Items.Add(horastr); //añadimos al combobox la hora horaini:=horaini+intervalo; end; end; |
|
|
|