Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-08-2005
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
Yo cambiaría un par de detalles sutiles:
Código Delphi [-]
type
  TItemRegistros = class(TCollectionItem)
  private
    FRegName: string;
  public
    function GetDisplayName: string; override;
  published
    property RegName: string Read FRegName Write FRegName;
  end;

implementation

function TItemRegistros.GetDisplayName: string;
begin
  if RegName = '' then
    Result := Format('%s [%d]', [ClassName, Index])
  else
    Result := RegName;
end;

¿El nombre tiene alguna funcionalidad mas que ser mostrado en tiempo de diseño?...
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #2  
Antiguo 01-08-2005
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
De casualidad vi otro detalle, que no tendría nada que ver con el problema anterior, en la parte:
Código Delphi [-]
procedure TItemRegistros.Assign(Source: TPersistent);
begin
  if Source is TRegistro then
    FRegistro := TRegistro(Source) 
  else
    inherited Assign(Source);
end;
Esta no es la idea de los métodos assign, la idea es que copie los valores no las referencias:
Código Delphi [-]
procedure TItemRegistros.Assign(Source: TPersistent);
begin
  if Source is TRegistro then
    with TRegistro(Source) do
    begin
      FRegistro.RegName := RegName;
      FRegistro.Registro.Assign(Registro); {Tendrías que implementar este método en TRegistro}
    end
  else
    inherited Assign(Source);
end;

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 01-08-2005
Avatar de fredo
fredo fredo is offline
Miembro
 
Registrado: oct 2003
Ubicación: Chile, Valparaiso
Posts: 318
Poder: 23
fredo Va por buen camino
Exclamation

si queda mejor como dices tu, pero sigue apareciendo el erro, al parecer hay un problema en el orden de creacion de los componentes, al cerra y abrir, trata de cargar primero la propiedad registros, ahi aun no existe el Registro por lo cual marca fallo, tengo que ver como cambiar el orden de creacion, primero los registros, luego el item.... gracias por darte la lata de leer el codigo.

tratare de corregir eso
__________________
^_^

http://stna.cl
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


La franja horaria es GMT +2. Ahora son las 08:39:37.


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