Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   timeline con stringgrid (https://www.clubdelphi.com/foros/showthread.php?t=93434)

(MAJ) 26-09-2018 05:37:51

timeline con stringgrid
 
Buenas gente linda del foro, estoy queriendo hacer un timeline con un stringgrid de la siguiente forma;
como en la imagen los rectangulos superpuestos al stringgrid o a alguna grilla (dbgrid, stringgrid, etc), y de ser posible manejar el evento onclick o algo
la verdad no encontre mucho por la web por eso recurro a su sabiduria, espero no joder a nadie.
desde ya les agradezco el tiempo
p/d: no se en que apartado ponerlo, asi que lo puse por acá

manelb 26-09-2018 07:35:50

Yo tenia que hacer algo similar hace un tiempo y opté por buscar componentes de terceros.

Concretamente podrías echar un vistazo en https://www.tmssoftware.com/, hay un paquete de calendarios y plannings.
Dispone de múltiples ejemplos de prueba de cada uno de sus componentes.

Finalmente no se hizo el proyecto y no los compramos, pero sigo teniendo los trial instalados por si los necesito.

Saludos

WHILENOTEOF 26-09-2018 07:56:30

En los Jedi VCL (gratuitos), hay un componente timeline que te puede servir.

Neftali [Germán.Estévez] 26-09-2018 09:08:38

Estaria bien que pusieras lo que has estado haciendo para que te podamos ayudar.

De primeras tengo dudas de si un TStringGrid o similar va a ser lo más adecuado, ya que son componentes enfocados a pintar celdas, y lo que tú necesitas no son exactamente celdas, de todas formas se puede probar a ver se comporta bien.


La otra opción es diseñarlo desde cero (al final pintar las celdas no cuesta tanto).

WHILENOTEOF 26-09-2018 10:03:25

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 528606)
Estaria bien que pusieras lo que has estado haciendo para que te podamos ayudar.

De primeras tengo dudas de si un TStringGrid o similar va a ser lo más adecuado, ya que son componentes enfocados a pintar celdas, y lo que tú necesitas no son exactamente celdas, de todas formas se puede probar a ver se comporta bien.


La otra opción es diseñarlo desde cero (al final pintar las celdas no cuesta tanto).

No coincido con esto, creo que un TStringGrid o un TDrawGrid, ya te da la base para organizar filas y columnas (lo cual se parece mucho a la imagen que ha puesto), y tienes eventos para controlar cuando se seleccionan celdas, lo que habría que añadir es el pintado de esas celdas, pero partir de alguno de esos dos componentes no me parece mala idea para esto.

Casimiro Notevi 26-09-2018 10:22:33

En torry.net parece que hay bastantes, seguro que alguno te sirve.

Neftali [Germán.Estévez] 26-09-2018 13:20:33

Cita:

Empezado por WHILENOTEOF (Mensaje 528608)
No coincido con esto, creo que un TStringGrid o un TDrawGrid, ya te da la base para organizar filas y columnas (lo cual se parece mucho a la imagen que ha puesto), y tienes eventos para controlar cuando se seleccionan celdas, lo que habría que añadir es el pintado de esas celdas, pero partir de alguno de esos dos componentes no me parece mala idea para esto.


Bueno, ya he dicho que era cuestión de probarlo.

Lo digo porque, por la experiencia que tengo en derivar componentes de tipo TGrid (no mucha), los mensajes, eventos y el código de estos controles está pensado para trabajar a nivel de celda (los que más me preocupan son los repintados) y justo el componente que desea diseñar [(MAJ)] aunque tiene una rejilla pintrada de fondo, se bbasa en dibujar elementos que no se ajustan a las celdas.


De ahí que no descartaría trabajar con un componente no basado en celdas y pintar estas de fondo (e implementar los eventos de teclado que me parece lo más simple).

(MAJ) 26-09-2018 13:56:02

gracias a todos por su tiempo:D


Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 528606)
Estaria bien que pusieras lo que has estado haciendo para que te podamos ayudar.

De primeras tengo dudas de si un TStringGrid o similar va a ser lo más adecuado, ya que son componentes enfocados a pintar celdas, y lo que tú necesitas no son exactamente celdas, de todas formas se puede probar a ver se comporta bien.


La otra opción es diseñarlo desde cero (al final pintar las celdas no cuesta tanto).


basicamente es eso, una linea de tiempo,de una base de datos traigo las fechas de los eventos que tengo registrado en un lapso de tiempo, y los dibujo en el grid, cuando uno hace click en el rectangulo del evento, salta un hint con una descripcion del evento, y con un click derecho se pueda abrir un popup con opciones sobre ese evento, ej modificarlo, elimiarlo, cosas por el estilo.
No se que tan complicado sera, ya que no soy de meterme con graficos(canvas, bitmap, etc), estuve probando en el canvas del stringgrid un trect y llenandolo con el brush, lo dibuja, pero no se como podria manejar los eventos, ademas de si es o no practico hacer eso.:confused:


La franja horaria es GMT +2. Ahora son las 22:30:18.

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