Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Fichas enlazadas con scroll (https://www.clubdelphi.com/foros/showthread.php?t=45862)

Chandra 16-07-2007 21:32:10

Fichas enlazadas con scroll
 
Hola. Estoy tratando de crear una estructura para presentar datos. Algo de aspecto parecido a un DBCtrlGrid.

El caso es que la estructura consiste en un par de paneles A y B situados sobre un tercer panel que hace de base. A la derecha tiene una ScrollBar que desliza los dos paneles hacia arriba y hacia abajo.

Cuando uno los paneles se desliza arriba o abajo y uno de ellos desaparece de la vista (es decir, al estar sobre un tercer panel base, se oculta por arriba o por abajo), lo vualvo a situar encima o debajo del que se ve, preparado para volver a aparecer por arriba o por debajo, según esté siendo la dirección del movimiento de la ScrollBar.

El caso es que funciona bastante bien. Simula que hay X paneles que van pasando haciendo scroll, cuando en realidad sólo hay 2.

La idea es situar sobre esos paneles los componentes que se quieran ir mostrando (por ejemplo, componentes dbaware), de manera que se pueda mostrar en cada "ficha" algo diferente (dado que el "invento" tiene una variable que me dice qué panel está a punto de mostrarse por arriba o por debajo, para que yo pueda rellenarlo según proceda, por ejemplo, con el siguiente o el anterior registro de una base de datos).

Puedo, incluso, poner sobre cada panel un PageControl y mostrar la solapa apropiada. Así es aún más versátil.

El problema es que se complica mucho cuando intento meter más de un panel (o "panel y pico", mejor dicho, pues siempre se ve uno, o uno y parte del siguiente). La complicación viene del hecho de que si quiero hacer algo realmente fncional, de tamaño utilizable, debo de manejar del orden de 7 paneles (para que se vea bien), cada uno con sus componentes dentro. Lógicamente eso smpieza a pesar mucho, y hacer scroll sobre el "ingenio" deja de ser suave.

También pensé, para simplificar la programación, en poner, por ejemplo, 7 paneles sobre cada uno de los 2 que se desplazan. De esa forma, sólo estoy moviendo realmente 2, y cada uno de ellos lleva montados "en la chepa" a 7 (cada uno de los 7 tendría sus page control con sus controles)... con lo que suman 14 paneles en todo momento, con sus 14 pagecontrol... Un monstruo.

La pregunta es... ¿Hay algún componente ya hecho que permita hacer lo que yo quiero?


O, en su defecto, ¿hay alguna forma mejor de hacer lo que yo quiero hacer? La intención es tener fichas, cada uno distinta a la otra (puede haber 5 o 6 tipos de fichas diferentes) que se desplacen haciendo scroll sobre ellas, como se desplazaría la ventana de un navegador.

Gracias y perdón por el ladrillo, pero es que no sé explicarlo en menos palabras :o

PD: Por cierto, Neftalí, si me lees, verás que al final me decidó por crear templates preestablecidas, en lugar de permitir al usuario crearse sus fichas arrastrando y soltando componentes.

Neftali [Germán.Estévez] 17-07-2007 10:44:21

Cita:

Empezado por Chandra
PD: Por cierto, Neftalí, si me lees, verás que al final me decidó por crear templates preestablecidas, en lugar de permitir al usuario crearse sus fichas arrastrando y soltando componentes.

Creo que eso te evitará problemas y mucha codificación a la hora de crear los componentes en ejecución.

En cuanto a la pregunta, es difícil detectar o pensar en optimizaciones sólo con la explicación; Para quien no lo ha visto es difícil hacerse una idea exacta.
Busca por aquí a ver si alguno de estos componentes te es útil.


La franja horaria es GMT +2. Ahora son las 06:55:22.

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