|
|
|
|
|
- Presentación
- Manipular controles Línea de tiempo mediante programación
- Agregar una pista
- Agregar un evento
- Rellenar un control Línea de tiempo con los datos de un archivo de datos HFSQL
- Obtener una lista de eventos
- Eliminar un evento
- Eliminar una pista
- Cambiar la escala de tiempo del control
- Uso del menú contextual (FAA)
- Uso avanzado de eventos asociados al control Línea de tiempo
- Uso avanzado de eventos con procedimientos
- Propiedades específicas de los controles Línea de tiempo
Manipular controles Línea de tiempo mediante programación
Un control Línea de tiempo se puede: Esta página de ayuda explica cómo manipular controles Línea de tiempo mediante programación. El siguiente ejemplo almacena los eventos en una base de datos HFSQL. Manipular controles Línea de tiempo mediante programación Agregar una pista Para agregar una pista a un control Línea de tiempo, llame a la función TimelineAddTrack. Ejemplo:
// Adds tracks in TL_TimeLine1 TimelineAddTrack(TL_Timeline1, "Sub Bass") TimelineAddTrack(TL_Timeline1, "Scratchy Drums") TimelineAddTrack(TL_Timeline1, "Guitar1")
Agregar un evento Para agregar un evento a un control Línea de tiempo, utilice la función TimelineAddEvent. Esta función acepta dos sintaxis: - sintaxis utilizada para especificar las características del evento: título, descripción, etc, ...
// Adds a 5-second event into a TimeLine control configured to the second MyTrack is string MyTitle is string EvtStart is int EvtEnd is int MyTrack = "Strings" MyTitle = "Start" EvtStart = 4 EvtEnd = 9 TimelineAddEvent(TL_Music, MyTrack, MyTitle, EvtStart, EvtEnd)
- sintaxis que manipula una variable de tipo EventTimeline.
TimelineDeleteAll(TL_Robots)
Evt is EventTimeline
TimelineAddTrack(TL_Robots, "Robot 1")
Evt.Track = "Robot 1"
Evt.Title = "Start"
Evt.Start = 10
Evt.End = 150
Evt.BackgroundColor = LightGreen
TimelineAddEvent(TL_Robots, Evt)
Evt.Track = "Robot 1"
Evt.Title = "Special process"
Evt.Start = 150
Evt.End = 450
Evt.BackgroundColor = PastelBlue
TimelineAddEvent(TL_Robots, Evt)
La propiedad BackgroundColor de la variable EventTimeline define el color utilizado para mostrar un evento. Si no se define ningún color de fondo, el control Línea de tiempo utiliza automáticamente el color asociado a la categoría del evento. Rellenar un control Línea de tiempo con los datos de un archivo de datos HFSQL Los registros se almacenan en un archivo de datos HFSQL. Para rellenar el control Línea de tiempo por primera vez, puede utilizar un bucle FOR EACH o agregar cada evento con la función TimelineAddEvent.
TimelineDeleteAll(TL_Robots) // Declare the events Evt is EventTimeline // Browse the Robot data file FOR EACH Robot TimelineAddTrack(TL_Robots, Robot.RobotName) // Browse the Evt_Robot data file FOR EACH Evt_Robot WITH RobotID = Robot.RobotID Evt.ToolTip = Evt_Robot.EvtTooltip Evt.Title = Evt_Robot.EvtTitle Evt.Start = Evt_Robot.EvtStart Evt.End = Evt_Robot.EvtEnd Evt.Content = Evt_Robot.EvtContent Evt.Track = Robot.RobotName Evt.BackgroundColor = Evt_Robot.EvtColor TimelineAddEvent(TL_Robots, Evt) END END
Recordatorio: También puede utilizar un control Línea de tiempo vinculado a un archivo de datos. Para obtener más información, consulte Control Línea de tiempo vinculado a un archivo de datos. Obtener una lista de eventos - la lista de todos los eventos del control Línea de tiempo:
arrEvtList is array of EventTimeline
arrEvtList = TimelineListEvent(TL_Timeline)
- la lista de eventos de una pista entre dos tiempos específicos:
// List of events for robot 1 found between 50s and 100s arrEvtList is array of EventTimeline arrEvtList = TimelineListEvent(TL_Robots, "Robot 1", 50, 100)
- el evento seleccionado o sobre el que se pasa el cursor:
// Selected event arrEvtList is array of EventTimeline arrEvtList = TimelineListEvent(TL_Robots, schAptSelected)
Eliminar un evento - el evento seleccionado en el control.
- un evento específico.
// Deletes the first event TimelineDeleteEvent(TL_MyTimeLine, 1)
Eliminar una pista La función TimelineDeleteTrack elimina una pista del control Línea de tiempo.
// Deletes the SOUND track ResDel is boolean ResDel = TimelineDeleteTrack(TL_MyTimeLine, "Sound") IF ResDel = True THEN Info("Track successfully deleted") END
La función TimelineDeleteAll elimina todos los eventos del control Línea de tiempo y sus pistas. Cambiar la escala de tiempo del control Puede cambiar la escala de tiempo de un control Línea de tiempo con la función TimelineChangeMode. Esta función cambia el modo de visualización del control: segundo, milisegundo o microsegundo. Uso del menú contextual (FAA) El control Línea de tiempo está asociado a un menú contextual (FAA). Este menú contextual permite: - aumentar o disminuir el zoom en el control,
- agregar, modificar o eliminar un evento.
Para guardar las operaciones realizadas, debe utilizar los eventos WLanguage asociados al control Línea de tiempo. En el evento WLanguage correspondiente, recupere el evento utilizado y realice el proceso correspondiente. Ejemplo: Para almacenar en un archivo de datos "EVT" un evento que el usuario agrega mediante el menú contextual, introduzca el siguiente código en el evento "Entrada en modo de edición en un evento": PROCEDURE EnterInInput(evtEdited is EventTimeline)
EVT.Title = evtEdited.Title
EVT.EvtStart = evtEdited.Start
EVT.EvtEnd = evtEdited.End
...
HAdd(EVT)
El mismo tipo de código puede implementarse para los diferentes eventos asociados al control Línea de tiempo. Por cada evento WLanguage asociado al control que manipula un evento, el control Línea de tiempo declara automáticamente un procedimiento . Estos procedimientos reciben como parámetro una variable de tipo EventTimeline. Uso avanzado de eventos asociados al control Línea de tiempo Uso avanzado de eventos con procedimientos También puede permitir que los usuarios definan con mayor precisión las características de los eventos al agregarlos o modificarlos. Para ello, cree una ventana con la información a especificar. En el código, especifique que la ventana debe abrirse en el evento "Entrada en modo de edición en un evento". Para bloquear la entrada directa, el proceso debe devolver False. Este principio puede aplicarse a todos los eventos WLanguage llamados mediante el menú contextual del control Línea de tiempo. Ejemplo: Abrir una ventana para introducir en el evento. PROCEDURE EnterInInput(evtEdited is EventTimeline)
Open(WIN_InputEvt_HFSQL, evtEdited)
RETURN False
Propiedades específicas de los controles Línea de tiempo Las siguientes propiedades permiten manipular controles Línea de tiempo.
| | EndTotalRange | La propiedad EndTotalRange se utiliza para: - obtiene la última fecha u hora que se puede mostrar en un control Planificador o Línea de tiempo.
- cambiar la última hora que se puede mostrar en un control Línea de tiempo.
| EndVisibleRange | La propiedad EndVisibleRange se utiliza para: - averigua y modifica la última fecha u hora visible en un control Planificador o en un control Línea de tiempo..
- modificar la última hora visible en un control Línea de tiempo.
| GranularityDuration | The GranularityDuration property gets and sets the size of the grid to resize:- appointments in an Organizer control.
- appointments in a Scheduler control.
- events in a TimeLine control.
- tasks in a Gantt Chart column.
| GranularityMovement | The GranularityMovement property gets and sets the size of the grid to move: - appointments in an Organizer control.
- appointments in a Scheduler control.
- events in a TimeLine control.
- tasks in a Gantt Chart column.
| RulerModifiable | The RulerModifiable property is used to: - Find out whether the user can move the playhead in a TimeLine control.
- Allow or prevent the user from moving the playhead in a TimeLine control.
| RulerValue | The RulerValue property is used to get or change the position of the playhead in a TimeLine control. | RulerVisible | The RulerVisible property is used to: - Determine if a playhead is visible in a TimeLine control.
- Show or hide a playhead in a TimeLine control.
| StartTotalRange | La propiedad StartTotalRange permite: - obtener la primera fecha u hora que se mostrará en un control Planificador o Línea de tiempo.
- cambiar la primera hora que se muestra en un control Línea de tiempo.
| StartVisibleRange | La propiedad StartVisibleRange permite: - obtener y cambiar la primera fecha u hora visible en un control Planificador o Línea de tiempo.
- cambiar la primera hora visible en un control Línea de tiempo.
|
Para obtener la lista completa de las propiedades WLanguage que pueden utilizarse con los controles Línea de tiempo, consulte Propiedades asociadas a los controles Línea de tiempo.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|