Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-07-2011
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 24
JXJ Va por buen camino
grid con trecord o clase asociada

hola

una duda ando necesitando
hacer que una celda de un grid.

pueda yo asosicarle un trecord
o una clase

con una clase se me hace facil asi



type
TNodeData = class
sText : string;

iIDpro: integer;
iIdalmacen:intger
snombrealmacen:string;
end;


y en cada celda solo se debe de mostrar el sText y al dar clic
en esa celda poder acceder a el iID: integer; stexto2:string;
por que necesito acceder a su id para hacer un query que me de
los datos asociados a esa clase o trecord

algo asi. el grid

========================================
pepsi | coca | fanta | agua | manzanita|
=================================
papas|cacahuates|chicharroes|fritos |frituras |
=======================================
papel|servilletas| seviletas 100| rollo pa|klenex |
========================================

asi al seleccionar coca. puedo obtener el id de ese producto
y el iIdalmacen:intger y el snombrealmacen:string;
eso es algo que no se como asociar el contenido de cada celda

con una clase o un trecord

el treeview si se puede. also asi con su propiedad .Data
me parece que el virtual treeview tambien se puede.
solo que no se como usarlo. no he aprendido.
y que en delphi 2010 no me sirve
todos los demos me dan error de memoria . se come mucha memoria

muchas gracias.
Responder Con Cita
  #2  
Antiguo 24-07-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Es un StringGrid ?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 25-07-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
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.

Proba si te sirve de este modo:
Código Delphi [-]
...
implementation

type
 TNodeData = class
    sText : string;
    iIDpro: Integer;
    iIdAlmacen:Integer;
    SNombreAlmacen:string;
  end;

(* Cargar datos de prueba *)
procedure TForm1.FormShow(Sender: TObject);
var
  c,f,x: Integer;
  ND: TNodeData;
begin
  x:= 1;
  for f:= StrGrd.FixedRows to StrGrd.RowCount-1 do
   for c:= StrGrd.FixedCols to StrGrd.ColCount-1 do
   begin
     ND:= TNodeData.Create;
     ND.sText:= IntToStr(f)+':'+IntToStr(c);
     ND.iIDpro:= x;
     ND.iIdAlmacen:= x;
     ND.SNombreAlmacen:= 'Almacen:'+IntToStr(f)+':'+IntToStr(c);
     StrGrd.Cells[c,f]:= ND.SNombreAlmacen;
     StrGrd.Objects[c,f]:= ND;
     Inc(x);
   end;
end;

(* mostrar datos de objeto asociado a celda *)
procedure TForm1.StrGrdClick(Sender: TObject);
begin
  with TNodeData(StrGrd.Objects[StrGrd.Col,StrGrd.Row]) do
   ShowMessage(sText+#10#13+
               IntToStr(iIDpro)+#10#13+
               IntToStr(iIdAlmacen)+#10#13+
               SNombreAlmacen)
end;

...

(* liberar memoria *)
procedure TForm1.FormDestroy(Sender: TObject);
var
  f,c: Integer;
begin
  for f:= StrGrd.FixedRows to StrGrd.RowCount-1 do
   for c:=  StrGrd.FixedCols to StrGrd.ColCount-1 do
     StrGrd.Objects[c,f].Free;
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 26-07-2011
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 24
JXJ Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola.

Proba si te sirve de este modo:

Código Delphi [-]
...
implementation

type
TNodeData = class
sText : string;
iIDpro: Integer;
iIdAlmacen:Integer;
SNombreAlmacen:string;
end;

(* Cargar datos de prueba *)
procedure TForm1.FormShow(Sender: TObject);
var
c,f,x: Integer;
ND: TNodeData;
begin
x:= 1;
for f:= StrGrd.FixedRows to StrGrd.RowCount-1 do
for c:= StrGrd.FixedCols to StrGrd.ColCount-1 do
begin
ND:= TNodeData.Create;
ND.sText:= IntToStr(f)+':'+IntToStr(c);
ND.iIDpro:= x;
ND.iIdAlmacen:= x;
ND.SNombreAlmacen:= 'Almacen:'+IntToStr(f)+':'+IntToStr(c);
StrGrd.Cells[c,f]:= ND.SNombreAlmacen;
StrGrd.Objects[c,f]:= ND;
Inc(x);
end;
end;

(* mostrar datos de objeto asociado a celda *)
procedure TForm1.StrGrdClick(Sender: TObject);
begin
with TNodeData(StrGrd.Objects[StrGrd.Col,StrGrd.Row]) do
ShowMessage(sText+#10#13+
IntToStr(iIDpro)+#10#13+
IntToStr(iIdAlmacen)+#10#13+
SNombreAlmacen)
end;

...

(* liberar memoria *)
procedure TForm1.FormDestroy(Sender: TObject);
var
f,c: Integer;
begin
for f:= StrGrd.FixedRows to StrGrd.RowCount-1 do
for c:= StrGrd.FixedCols to StrGrd.ColCount-1 do
StrGrd.Objects[c,f].Free;
end;





Saludos.

hola.
muchas gracias ecfisa
esto es lo que necesito.

estoy revisandolo

unas preguntas mas.
¿el stringgrid tambien soporta records en vez de clases?

¿que otros componentes soportan objects, clases y records de forma
semejante a este ejemplo?

muchas gracias ecfisa
Responder Con Cita
  #5  
Antiguo 26-07-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
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 JXJ.
Cita:
¿el stringgrid tambien soporta records en vez de clases?
Es válido hacer:
Código Delphi [-]
var
   s: string;
begin
  s:= 'Hola';
  StringGrid1.Objects[StrGrd.Col,StrGrd.Row]:= TObject(s);
  ShowMessage(string(StringGrid1.Objects[StrGrd.Col,StrGrd.Row]))
end;
Pero hasta donde yo sé, no se permite un cast a una estructura compuesta tipo registro.



Cita:
¿que otros componentes soportan objects, clases y records de forma semejante a este ejemplo?
Que puedan almacenar objetos son varios, algunos que recuerdo:
Código:
TObjecList
TStringList
TComboBox1
TListBox
TMemo
TRadioGroup
TRichEdit
TTreeView
Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
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
Union de Tabla Principal y ultimo registro en asociada apicito SQL 1 13-07-2007 14:01:54
Actualizar base asociada Ilaier Gráficos 0 08-02-2006 14:00:41
Informacion Asociada a FilaCol de StringGrid ASAPLTDA OOP 1 02-08-2005 18:03:00
Error en Array Trecord. alfredosg19 Varios 1 20-03-2005 16:55:04
Aplicacion asociada a un archivo VolaRe Windows 1 18-08-2004 09:31:22


La franja horaria es GMT +2. Ahora son las 16:20:27.


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