Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-08-2006
Avatar de jzginez
jzginez jzginez is offline
Miembro
 
Registrado: sep 2003
Ubicación: Puebla, México
Posts: 247
Poder: 21
jzginez Va por buen camino
Inicializar componentes propios

Hola amigos hace ya vastante tiempo uno de los master de este foro (desafortunadamente no recuerdo quien) en un tema proporcionaba un programa y el código de como cambiar combobox para hacer que te mostrara varias columnos y te regresara el valor que se localizaba en x columna el proyecto se llama pcombobox, esto es como simple historia y por si alguien mas lo recuerda.

El caso es que en lo personal me gusto mucho esos cambios y como lo he usado en varios sistemas, hoy que tengo un poco de tiempo lo modifique lo suficiente para hacerlo un componente, la declaración me quedo como sigue:
Código Delphi [-]
type
  arreglos = array of String;
  TComboBoxMultiple = class(TComboBox)
  private
    { Private declarations }
    ColMostrar,
    ColAlmacenar: Integer;
    Resultados: arreglos;
    procedure DrawTxt(S: string; ARect: TRect);
    function GetField(S: string; FieldIndex: integer; Delimiter: Char): string;
  protected
    { Protected declarations }
    procedure DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
  public
    { Public declarations }
    constructor Create(AOwner : TComponent); override;    {Constructor}
    destructor Destroy; override;                         {Destructor}
    Procedure EscribeColAlmacenar(Valor: Integer);
    Procedure EscribeColMostrar(Valor: Integer);
    Function LeeResultados: Arreglos;
  published
    { Published declarations }
     property ColumnaAlmacenar: Integer read ColAlmacenar write EscribeColAlmacenar default 1;
     property ColumnaMostrar: Integer read ColMostrar write EscribeColMostrar default 1;
     Property Valores: arreglos read LeeResultados;
  end;

el componente funciona, el problema es que cuando quiero usar este componente y lo coloco en alguna forma las propiedades ColumnaAlmacenar y ColumnaMostrar en el inspector de propiedades estan en 0 cuando segun yo deberian de ser 1 y si las cambio en el mismo inspector de propiedades no hacen lo que deberian de hacer pero si las cambio por código si funcionan bien.

alguien podra saber que esta pasando, Gracias
__________________
Espero poder seguir exprimiéndote el cerebro 8)
Jorge Zamora Ginez
Puebla, Pue. México
Responder Con Cita
  #2  
Antiguo 13-08-2006
Avatar de Héctor Randolph
[Héctor Randolph] Héctor Randolph is offline
Miembro Premium
 
Registrado: dic 2004
Posts: 882
Poder: 20
Héctor Randolph Va por buen camino
En el constructor inicializa los campos para forzar a que tengan los valores que has puesto como default.

Código Delphi [-]
constructor TComboBoxMultipleCreate.(AOwner : TComponent); 
begin
  .
  .
  .
  ColMostrar:=1;
  ColAlmacenar:=1;
  . 
  . 
end;

Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Creacion de componentes o controles propios Lionel OOP 1 16-12-2004 16:08:24
Inicializar TreeView AGAG4 Varios 2 18-11-2004 01:33:03
Inicializar Tchart ? elbilla Gráficos 4 15-09-2004 15:58:27
Inicializar TADOConnection xgerard Conexión con bases de datos 5 21-11-2003 21:56:14
Codigos de barras en Prendas de ropa ¿Generar Propios? jealousy Varios 3 17-09-2003 06:13:19


La franja horaria es GMT +2. Ahora son las 13:12:10.


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