Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-05-2011
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 16
mizzard Va por buen camino
Como crear una rejilla automática con base de datos

Hola a todos, os comento mi duda.

Resulta que tengo creada una base de datos con access (la conexión me funciona perfectamente).

El caso es que me gustaría crear una especie de rejilla (no se si con un DBGrid podría hacerse).

La idea es coger de una de las tablas las imágenes de unos productos y mostrarlos como si fuera una matriz (no uno debajo de otro como sería en una tabla).

El objetivo de esto es que al iniciar el programa lea los productos que hay y cargue las imágenes de forma automática, de tal forma si hay que realizar cambios en la base de datos, se actualice automáticamente en el programa.

No se si me he explicado bien, pero mi duda sería si ésto se podría hacer y como podría hacerse, porque no tengo claro por donde empezar.

Cualquier duda estaré encantado de resolverla.

Muchas gracias a todos, un saludo!
Responder Con Cita
  #2  
Antiguo 03-05-2011
_cero_ _cero_ is offline
Miembro
 
Registrado: abr 2007
Posts: 147
Poder: 20
_cero_ Va por buen camino
Thumbs up

Que quieres decir con matriz? Algo como esto, porque si es así es cosa difícil (hacerlo uno mismo, claro está), si quieres facilitarte la vida tendrás que conseguirte componentes de terceros, los de la imagen son los “Berg Component Suite” de pago, aunque por ahí a dé haber unos libres sería cuestión de buscar.
Responder Con Cita
  #3  
Antiguo 03-05-2011
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 16
mizzard Va por buen camino
Hola, la imagen que has puesto no la puedo ver. Cuando me refiero a una matriz me refiero a una serie de cuadriculas con imágenes tanto en filas como en columnas, algo como la imagen q pongo.

Y no sabes si existe algun otro componente para hacer lo mismo?? (con botones o de alguna otra forma?)

Gracias y un saludo!

Última edición por mizzard fecha: 14-12-2011 a las 20:52:38.
Responder Con Cita
  #4  
Antiguo 03-05-2011
_cero_ _cero_ is offline
Miembro
 
Registrado: abr 2007
Posts: 147
Poder: 20
_cero_ Va por buen camino
Perdón no puse bien el enlace pero es este:

http://www.megapix.com/?p=23LE1XCN.jpg

En cualquier caso sí sé que es una matriz, pero en el DBGrid ya aparecen los datos en matriz, es decir en filas y columnas por eso no entiendo. Lo que muestro en la imagen es lo que quieres hacer?

Última edición por _cero_ fecha: 03-05-2011 a las 08:57:55.
Responder Con Cita
  #5  
Antiguo 03-05-2011
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 4.214
Poder: 24
newtron Va camino a la fama
Hola, no conozco ningún componente que te haga eso por lo que podrías pensar en crear una serie de botones usando algún componente en el que puedas poner una imagen y creando los que necesites en lineas y filas según el tamaño que desees que tenga la imagen.

Aunque no para esto yo he hecho algo parecido para una impresión de etiquetas en la que se crea una matriz de botones de N etiquetas por ancho x M filas y que permite picar en cualquiera de ellos, por si te sirve de ejemplo te paso el código a continuación.

Código Delphi [-]
procedure TFormPideNumEti.LLamaNumEti(var NumEti: SmallInt;Filas,Columnas,Ancho,Alto: SmallInt);
var
Left,Top,EtiLin,EtiCol,N: SmallInt;
begin
  FormPideNumEti := TFormPideNumEti.Create(Application);
  try
    SetLength(ArrayBotones,0);
    EtiLin:=0;EtiCol:=0;
    Top:=50;Left:=24;
    T:=Columnas*Filas;
    for N := 0 to T-1 do begin
      Setlength(ArrayBotones,Length(ArrayBotones)+1);
      ArrayBotones[N]:=tdsFancybutton.Create(nil);
      ArrayBotones[N].Name:='Boton_'+IntToStr(N);
      ArrayBotones[N].Left:=Left;
      ArrayBotones[N].Top:=Top;
      ArrayBotones[N].Width:=Ancho;
      ArrayBotones[N].Height:=Alto;
      ArrayBotones[N].Parent:=FormPideNumEti;
      ArrayBotones[N].Font.Size:=20;
      ArrayBotones[N].Caption:=IntToStr(N+1);
      ArrayBotones[N].OnClick := BotonClick;
      ArrayBotones[N].Tag := N+1;
      if EtiLin=Filas-1 then begin
        Top:=Top+Alto;
        Left:=24;
        EtiLin:=0;
      end else begin
        EtiLin:=EtiLin+1;
        Left:=Left+Ancho;
      end;
    end;

    FormPideNumEti.ShowModal;
    NumEti := FormPideNumEti.NumEti;

  finally
    FormPideNumEti.Destroy;
  end;

end;

Saludos
Responder Con Cita
  #6  
Antiguo 03-05-2011
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 16
mizzard Va por buen camino
Hola _cero_, no es exáctamente lo que busco (perdona por la imagen de antes que aporta poca informacion), la idea final es hacer algo tal que asi (he encontrado otra imagen mejor "matriz2").

newtron, el problema que tengo es q a cada imagen (alojada en una base de datos) va asociado un identificador, el cual necesito para poder obtener el resto de los datos de esa imagen en concreto.

Entonces si lo hiciese con botones, ¿seria posible crear en un panel tantos botones como elementos hayan en la base de datos y a cada uno asignarle su imagen? ¿Seria posible crear todos los botones y si no caben que salga una barra de scroll?

¿Como podria indicar cuando se crean los botones automáticamente el elemento al que pertenece cada uno de ellos si modifico la base de datos (con el programa cerrado)?

Bufff perdon por tanta pregunta, pero es que no se por donde tirar....


Muchas gracias!

Última edición por mizzard fecha: 14-12-2011 a las 20:52:38.
Responder Con Cita
  #7  
Antiguo 03-05-2011
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 4.214
Poder: 24
newtron Va camino a la fama
Hola de nuevo.

Me huelo que lo que quieres hacer es una pantalla de ventas táctil. ¿Es así?
Responder Con Cita
  #8  
Antiguo 03-05-2011
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 16
mizzard Va por buen camino
Si, algo parecido...
Responder Con Cita
  #9  
Antiguo 03-05-2011
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 16
mizzard Va por buen camino
He estado mirando en los componentes y he encontrado el buttongroup y tiene buena pinta.

¿Alguien ha trabajado con él? Lo comento pq ahora lo q me faltaría es asignarle a cada boton que se genere la imagen correspondiente y el identificador para saber los datos que tengo que obtener de ese producto.

Un saludo!
Responder Con Cita
  #10  
Antiguo 03-05-2011
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 4.214
Poder: 24
newtron Va camino a la fama
Pues si quieres hacer algo medianamente profesional te lo vas a tener que currar a pelo.



Si te fijas en esta imagen verás que hay dos paneles, uno de 3x4 botones a la izquierda que son para las familias y otro a la derecha para los artículos de esa familia, también verás abajo unos botones de izquierda/derecha para ir pasando imágenes adelante o atrás. Todo está hecho con botones fijos que se van rellenando según vayas pulsando los botones de izquierda/derecha.

Espero haberte dado algo de luz sobre el tema pero tiene faena programar una cosa de estas.

Saludos
Responder Con Cita
  #11  
Antiguo 03-05-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.439
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Creo que el compoente TSimpleGraph te puede ayudar (facilitarte el trabajo de "pintar" elementos gráficos), pero la carga de datos vas a tener que hacerla tú desde Base de Datos.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #12  
Antiguo 03-05-2011
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 16
mizzard Va por buen camino
Hola a todos, finalmente lo he hecho con el componente ButtonGroup.

Una vez cargada la BBDD, utilizo diferentes querys en funcion de lo que busco y con los DBText y usando las opciones de moverme por los registros obtengo lo que buscaba.

Muchas gracias a todos y cualquier duda estaré encantado de colaborar!


Un saludo!
Responder Con Cita
  #13  
Antiguo 03-05-2011
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 23
defcon1_es Va por buen camino
Hola.
Tambien podrías usar el gran desconocido TDBCtrlGrid.

Puedes ver aqui como queda en la aplicación para TPV que desarrollo en la empresa donde trabajo
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #14  
Antiguo 03-05-2011
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Poder: 25
José Luis Garcí Va camino a la fama
Mizzard as probado con el componente del Club, TCCDDBImageGrid, te lo recomiendo para temas de Tpv, Tengo un amigo al que se lo recomendé y le quedo un tpv, muy vistoso y para los artículos usa este componente, lo que hizo fue usar sentencias Sql, según la familia para seleccionar el producto, aparte de la base de datos Familia, Claro.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como crear una sencuencia automática en Postgres 8.2 elvymena PostgreSQL 7 19-11-2009 14:27:24
Como Crear Base De Datos Con Sql Server flor MySQL 1 09-02-2008 20:42:59
como crear una base de datos vril Firebird e Interbase 2 01-08-2007 03:15:52
¿Cómo crear una base de datos de Interbase? seara2005 Firebird e Interbase 1 14-01-2005 07:26:17
¿Cómo crear base de datos en IB 6.5? Eurosil Firebird e Interbase 1 10-11-2003 15:18:33


La franja horaria es GMT +2. Ahora son las 16:02:41.


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
Copyright 1996-2007 Club Delphi