Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   mostrar datos en forma matriz (https://www.clubdelphi.com/foros/showthread.php?t=79453)

ginesgomezlopez 05-07-2012 22:51:19

mostrar datos en forma matriz
 
Hola, tengo una tabla con tres campos, primer campo el día del mes, segundo campo el mes y tercer campo un valor numeríco, se podría hacer en un dbgrid que las columnas fueran el día del mes, las filas el mes, y en el cuadro interior sólo apareciera el valor numérico que correspondiera a cada día del año, así por ejemplo a lo mejor el 3 de Marzo tuvera un valor numérico de 60 y el 5 de Junio su valor que correspondiera, por que buscar el valor numérico lo sé buscar según el día y el mes, pero no sé representarlo gráficamente en un dbgrid, o sería mejor otro componente.

Gracias.

Casimiro Noteví 05-07-2012 22:57:49

Creo que no se entiende lo que dices :confused:

ginesgomezlopez 05-07-2012 23:12:05

mejor lo haré gráficamente:

Tengo Por Un Lado Los Día (columnas), Por Otro Los Meses (filas) Y En El Interior Un Valor Numérico Llamado Tiempo, Así En Este Caso El 3 De Marzo Correpondería A 28. La Tabla está confeccionada con estos tres campos, lo único es ver cómo puedo representarlos gráficamente de esta manera y si es posible a la vez poder modificarlos directamente.

Mes/dia... 1... 2.... 3... 4... 5... 6 7 8 9 10 -------

Enero..... 28.. 25.. 12 ..........
Febrero.. 30.. 30.. 10 ..........
Marzo.....27.. 43.. .28 .........
Abril...... 30.. 55... 13 .........
Mayo..... 35.. 60...28 ...........
Junio.... .40.. 33.. 33 ...........
.
.
Espero que así se entienda la idea, gracias.

.

ecfisa 05-07-2012 23:25:01

Hola.

Si no entendí mál tu primer mensaje, no lo creo factible.

No te olvides que un TDBGrid representa visualmente el contenido de una tabla y en este caso sería como intentar alterar la estructura de la misma, es decir que algunos campos se comportaran como registros.

Tal vez te sirva un TStringGrid para el caso...

Saludos.

ginesgomezlopez 05-07-2012 23:38:02

la Tabla sería:

mes dia tiempo
1 1 25
1 2 30
..
2 15 28
2 16 30

y así sucesivamente, sólo modificaría los registros del campo tiempo, los meses y los días de cada mes serían intocables, con el dbgrid podría representarlo tal y como lo hecho ahora mísmo, y podría modificar los registros del campo tiempo, pero no puedo representarlo como en el esquema del mensaje anterior, miraré con el StringGrid, a ver si es posible representarlo en forma de matriz.

Saludos.

Delphius 06-07-2012 05:45:33

Si existe los campos Mes y Dia expresados en términos numéricos es posible entonces hacer una simple correspondencia:

Nº Mes -> Nº Fila del stringGrid
Nº Dia -> Nº Columna del stringGrid

De modo que con tener desde tiempo de diseño la matriz de dimensión (12 x 31) y lanzar una consulta bastará con ir recorriendo registro a registro y posicionarse en StringGrid.Cells[Col, Row] siendo Col y Row el valor leídos de los campos Dia y Mes respectivamente y poner en dicha celda el contenido del campo Tiempo.

No es tan complicado.

Saludos,

ginesgomezlopez 06-07-2012 14:54:32

Si es cierto, no es muy complicado, estaba obsesionado con el dbgrid, quería irme por el camino rápido que suele ser el peor, y así poder modificar el registro tiempo de cualquier día del año en un momento, así con el stringgrid haré la correspondencia que me dices para llenarlo y luego partiendo del stringgrid haré la correpondencia inversa para grabar las modificaciones de los registro tiempo en la tabla.

Saludos.


La franja horaria es GMT +2. Ahora son las 09:53:03.

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