Criação de componentes com subcomponentes
Olá pessoal,
É muito bom estar de volta ao fórum.
Espero poder compartilhar meus modestos conhecimentos com vocês.
Gostaria de esclarecer algumas dúvidas de como criar componentes com subcomponentes agregados, inclusive com suas ´principais´ propriedades publicadas no Object Inspector ?
Abraços a todos,
AASN
É muito bom estar de volta ao fórum.
Espero poder compartilhar meus modestos conhecimentos com vocês.
Gostaria de esclarecer algumas dúvidas de como criar componentes com subcomponentes agregados, inclusive com suas ´principais´ propriedades publicadas no Object Inspector ?
Abraços a todos,
AASN
Aasn
Curtidas 0
Respostas
Dopi
25/12/2005
Se vc usar Delphi 6 ou superior é só criar o sub-componente no metodo Create do componente principal e usar [b:498abe9d6c]SetSubComponent[/b:498abe9d6c] para expor o sub-componente ao ObjectInspector e também gravar a propriedades dele no DFM/XFM
GOSTEI 0
Aasn
25/12/2005
Caro Daniel,
obrigado pela atenção.
Eu utilizo o Delphi 5 que infelizmente não tem a função SetSubCompopnent!
[]´s
AASN
obrigado pela atenção.
Eu utilizo o Delphi 5 que infelizmente não tem a função SetSubCompopnent!
[]´s
AASN
GOSTEI 0
Dopi
25/12/2005
Nesse caso,
Vc pode usar um Editor de propriedades que já existe no Delphi...
No mesmo fonte que vc registra o componente insira:
RegisterPropertyEditor(TypeInfo(TSeuSubComponente), TSeuComponente, ´NomeAExibir´, TClassProperty);
Vc pode usar um Editor de propriedades que já existe no Delphi...
No mesmo fonte que vc registra o componente insira:
RegisterPropertyEditor(TypeInfo(TSeuSubComponente), TSeuComponente, ´NomeAExibir´, TClassProperty);
GOSTEI 0
Aasn
25/12/2005
Valeu Daniel,
esclareceu bastante, mas ainda não está 100¬ não estou conseguindo trabalhar com os subcomponentes em tempo de execução!
vc poderia me mandar algum exemplo ?
[]´s
AASN
esclareceu bastante, mas ainda não está 100¬ não estou conseguindo trabalhar com os subcomponentes em tempo de execução!
vc poderia me mandar algum exemplo ?
[]´s
AASN
GOSTEI 0
Dopi
25/12/2005
No projeto ACBr, vários componentes possuem um sub-componente chamado TACBrDevice... Esse sub-componente é responsável pela comunicação com os equipamentos suportados, através da Porta Serial, Paralela, ou arquivo... No D7 e superiores, usei o Setsubcomponente conforme descrito no inicio do tópico... no D5, usei o RegisterPropertyEditor... Observe o trecho de codigo que está dentro do [i:ab8d70f243]{$IFNDEF Delphi6_UP}[/i:ab8d70f243]
procedure Register; begin RegisterComponents(´ACBr´, [TACBrECF, TACBrCalculadora, TACBrGAV, TACBrCHQ, TACBrLCB, TACBrDIS, TACBrTER, TACBrBAL, TACBrExtenso, TACBrTroco, TACBrValidador {$IFDEF VisualCLX}, TACBrEnterTab{$ENDIF} ]); { Registrando os Editores de Propriedade } RegisterPropertyEditor(TypeInfo(TACBrAboutInfo), nil, ´AboutACBr´, TACBrAboutDialogProperty); RegisterPropertyEditor(TypeInfo(String), TACBrGAV, ´StrComando´, TACBrGAVStrComandoProperty); RegisterPropertyEditor(TypeInfo(String), TACBrCHQ, ´ArquivoBancosINI´, TACBrFileNameProperty); {$IFNDEF Delphi6_UP} RegisterPropertyEditor(TypeInfo(TACBrDevice), TACBrECF, ´Device´, TClassProperty); RegisterPropertyEditor(TypeInfo(TACBrDevice), TACBrGAV, ´Device´, TClassProperty); RegisterPropertyEditor(TypeInfo(TACBrDevice), TACBrCHQ, ´Device´, TClassProperty); RegisterPropertyEditor(TypeInfo(TACBrDevice), TACBrLCB, ´Device´, TClassProperty); RegisterPropertyEditor(TypeInfo(TACBrDevice), TACBrDIS, ´Device´, TClassProperty); RegisterPropertyEditor(TypeInfo(TACBrDevice), TACBrBAL, ´Device´, TClassProperty); RegisterPropertyEditor(TypeInfo(TACBrDevice), TACBrTER, ´Device´, TClassProperty); {$ENDIF} { Registrando os Editores de Componente } RegisterComponentEditor(TACBrCalculadora, TACBrCalculadoraEditor); RegisterComponentEditor(TACBrECF, TACBrECFEditor); end;
GOSTEI 0
Aasn
25/12/2005
Valeu Daniel,
agora ficou claro como o Delphi 5 trabalha com os subcomponentes, obrigado!
E a propósito achei interessante a proposta do Automação Comercial Brasil, irei me inscrever como colaborador e ajudar no que for possível.
[]´s
AASN
agora ficou claro como o Delphi 5 trabalha com os subcomponentes, obrigado!
E a propósito achei interessante a proposta do Automação Comercial Brasil, irei me inscrever como colaborador e ajudar no que for possível.
[]´s
AASN
GOSTEI 0