Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-02-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
Wink Componente de arrastrar

Hola foro, quiero hacerle una consulta, quiero hacer un modulo de cotización, dentro del mudulo de cotización quiero colocar un centelló donde me refleja la tabla de productos en la parte superior del from, debajo de este sentillo debe de estar un dbgrid. Ahora bien yo quisiera arrastrar con el mouse el producto desde el sentillo hasta el dbgrid, alguien tendrá algúna idea de como hacerlo o que componente debo utilizar?
Responder Con Cita
  #2  
Antiguo 29-02-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No se que es un centelló ? o sentillo ?.
A que te refieres ?
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 29-02-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Caral Ver Mensaje
No se que es un centelló ? o sentillo ?.
Espero que esta estrofa del poema La Araucana de Alonso de Ercilla ponga un poco de luz a tu duda:
Cita:
¿ Qué furor es el vuestro, ¡ Oh araucanos !,
que a perdición os lleva sin sentillo ?
¿ Contra vuestras entrañas tenéis manos,
y no contra el tirano en resistillo ?
Un saludillo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 29-02-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No conocía el poema amigo y eso que viví un tiempo en Venezuela, me sonaba que andaba por algún tipo de modismo nacional, no pensé en el estado de Arauca , pero sigo sin saber que tiene que ver con delphi.
Estoy igual, no entiendillo nadilla.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 29-02-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
Llamamos sentillo, una franja en la parte superior del from. Para decirlo en otras palabras pudiera ser un grid, un group box, un panel, lo que quiero poderlo hacer con cualquier cosa que pueda contener la informacion de la tabla de producto con su foto. Inicialmente habia pensado un grid horizontal donde en cada celda me aparezca la foto del producto y debajo de ella unos label con la informacion del mismo y al arastrarlo a un dbgrid el el mismo from se carque el producto, con imformacion de costo, cantidad etc.
Responder Con Cita
  #6  
Antiguo 29-02-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola gianfranco.

Ahora sí está un poco más claro, pero de todas maneras no alcanzo a entender la situación o te faltan algunos detalles para que lo haga.
Por que si en la parte superior tenés un TDBImage asociado a un TDataSet y debajo un TDBGrid asociado al mismo, al estar seleccionada la imágen, en el DBGrid estará seleccionado el registro del campo que la contiene...

De todos modos te pongo un ejemplo de donde quizá puedas sacar alguna idea. Para el mismo agregá un TDBCtrlGrid, un TDBGrid y un TDBImage centrado en el
panel del DBCtrlGrid .

Código Delphi [-]
...
procedure TForm1.FormCreate(Sender: TObject);
begin
  with DBCtrlGrid1 do
  begin
    Align:= alTop;
    Orientation:= goHorizontal;
    ColCount:= 5;
    RowCount:= 1;
    Height:= 130;
    PanelHeight:= 115;
    DataSource:= DataSource1;
  end;
  with DBImage1 do
  begin
    Height:= 105;
    Width:= 105;
    DataField:= 'Campo_Imágen'; // nombre del campo con la imágen
  end;
end;

// Nueva selección, DBGrid en blanco
procedure TForm1.DBImage1Click(Sender: TObject);
begin
  DBGrid1.DataSource:= nil; 
end;

procedure TForm1.DBImage1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  DBImage1.BeginDrag(True);
end;

procedure TForm1.DBGrid1DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  Accept:= Source is TDBImage;
end;

// El DBGrid se posiciona en el mismo registro que el campo imágen
procedure TForm1.DBGrid1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
  DBGrid1.DataSource:= (Source as TDBImage).DataSource; 
end;
...
Logicamente, para la prueba necesitarás un DataSet que contenga un campo con imágen.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 29-02-2012 a las 12:36:35.
Responder Con Cita
  #7  
Antiguo 29-02-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
Wink

ejemplo6.rar

bueno le envío un ejemplo que estoy haciendo: el de abajo es un dbgrid con un clientdataset, lo que esta arriba es Dbctrlgrid. lo que yo quisiera hacer y no se si lo estoy haciendo con la herramienta correcta es que en el edit1 atravez del evento onchange le coloco una consulta sobre la tabla de productos utilizando un like, obviamente en este momento en el Dbctrlgrid deberan aparecerme todos los productos de forma vertical que coincidan con el like, se debe mostrar de esta forma la foto pequeña del productos, debajo de la foto debo ver por ejemplo la cantidad en inventario y la descripcion del producto. ahora bien quiero que el usuario selecione la foto con el mouse y lo arrastre hasta el dbgrid que esta abajo y al soltarlo en el dbgrid debe llenar la columna solo con los datos requeridos, como emeplo co_art, cost_unit. etc. no se si tienen alguna idea de como hacerlo o que herramienta usar para eso. saludos
Responder Con Cita
  #8  
Antiguo 29-02-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Gianfranco.

Si ahora te entiendo perfectamente, pero creo sería mas apropiado usar un componente que pueda mostrar texto y recibir Drag&Drop independientemente de los cambios del TDataSet.

Puede ser cualquiera de tu gusto, te pongo un ejemplo simple que usa un TStaticText:
Código Delphi [-]
...
procedure TForm1.DBImage1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  DBImage1.BeginDrag(True);
end;

procedure TForm1.StaticText1DragDrop(Sender, Source: TObject; X,
  Y: Integer);
begin
  with DBImage1.DataSource.DataSet do
    StaticText1.Caption:= FieldByName('Campo1').AsString + ' '+
      FieldByName('Campo2').AsString+' '+FieldByName('Campo3').AsString +' '+
      ...;

end;

procedure TForm1.StaticText1DragOver(Sender, Source: TObject; X,
  Y: Integer; State: TDragState; var Accept: Boolean);
begin
  Accept:= Source is TDBImage;
end;
...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #9  
Antiguo 29-02-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
con cual componente pudiera hacerlo, tomando en cuenta que el de arriba debe ser horizontal y debe mostrarme la imagen y el de abajo puede ser un dbgrid?
Responder Con Cita
  #10  
Antiguo 29-02-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por gianfranco_tont Ver Mensaje
con cual componente pudiera hacerlo, tomando en cuenta que el de arriba debe ser horizontal y debe mostrarme la imagen y el de abajo puede ser un dbgrid?
No le veo el sentido de usar un TDBGrid tratándose del mismo TDataSet... pero en su lugar podría ser un TStringGrid.

Saludos.

Edito: ¿ O el DBGrid estaría relacionado con otro TDataSet ?
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 29-02-2012 a las 16:58:16.
Responder Con Cita
  #11  
Antiguo 29-02-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Con esto de mover componentes me acorde del maestro Neftali y un ejemplo muy bueno que hizo.
Con su código he hecho este pequeño juego.
Con el mouse (click Derecho) tomad la imagen y arrastrarla al dbgrid.
Saludos
__________________
Siempre Novato

Última edición por Caral fecha: 17-09-2012 a las 01:19:12.
Responder Con Cita
  #12  
Antiguo 29-02-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
Wink

oye caral, tu ejemplo es justo lo que estaba buscando, vale eres grande!!! pero ahora tengo una sola duda como hago ya que tu solo tienes 4 imagenes arriba pero yo necesito estar enlazado con la base de datos de productos asi que voy a tener muchissima imagenes la cual la pueda navegar en ella con un scrol ademas quisiera que en un evento onchange de un edit.text colocarle un like para reducirla busqueda, ademas otra cosa debajo de la imagen debe venir un label con la informacion de cantidad y descripcion de producto.
Responder Con Cita
  #13  
Antiguo 29-02-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Tu en realidad, segun veo vas a tener solo una imagen que va a ir cambiando, es lo mismo, solo que con una, no creo que sea con muchas.
La imagen la puedes poner dentro de un panel y en este poner el label o lo que necesites, a la hora de mmoverla tendra que cambiar el codigo de imagen a panel.
Para que filtra hazte un procedimiento y llamalo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #14  
Antiguo 29-02-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
Wink

al contrario de hecho utilizo un like para reducir la busqueda, sobre una tabla de 1500 productos lo que quiero obtener con el like es que cuando el usuario escriba ejemplo 'ceramica 30X30' obviamente solo en ese modelo tengo 75 productos cada uno distinto, por eso mi duda.
Responder Con Cita
  #15  
Antiguo 29-02-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Y recibe 75 imagenes ?.
No es mejor que cuando le de click al dbgrid le cambie la imagen ?
Saludos
__________________
Siempre Novato
Responder Con Cita
  #16  
Antiguo 29-02-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
Wink

claro recibo la 75 imágenes pero por supuesto en el panel no pueden ir la 75 por eso deberia tener algo que lo pueda mover con un scrol vertical.
Responder Con Cita
  #17  
Antiguo 01-03-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Para hacer eso usa un srollBox (paleta adicional), ya trae el scroll.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #18  
Antiguo 01-03-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
caral tienes algun ejemplo de como llenar el scollbox con la informacion que requiero?
Responder Con Cita
  #19  
Antiguo 01-03-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No se que requieres.?
Saludos
__________________
Siempre Novato
Responder Con Cita
  #20  
Antiguo 01-03-2012
gianfranco_tont gianfranco_tont is offline
Miembro
NULL
 
Registrado: ene 2012
Posts: 96
Poder: 13
gianfranco_tont Va por buen camino
Wink

es lo mismo que tu tienes en el ejemplo tu tienes solo 3 productos yo tengo que leer y traerme la información que este en la tabla de productos, donde quiero que me muestre las fotos del productos y debajo de la foto la descripción y el precio, todas estas información esta en una tabla.
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
Arrastrar y Soltar Panasys OOP 7 11-08-2011 00:03:26
Arrastrar de objetos Cheswar Gráficos 1 30-09-2007 23:03:45
arrastrar y muliseleccion palets Gráficos 2 06-06-2006 23:35:31
Arrastrar Registro vtdeleon SQL 8 13-08-2005 00:51:17
Arrastrar y Soltar!!! chechu Varios 6 21-10-2004 20:26:35


La franja horaria es GMT +2. Ahora son las 21:52:23.


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