Array
(
)

Herança de Classe quot;própriaquot;

José Cordeiro
   - 06 dez 2005

Defini uma classe em um formulário-padrão, como segue (retirei propriedades para reduzir o tamanho do texto).

type
TFrmConfig = class
private
GetDBGridFormatFilename: string;
ErrorMsgs: TStringList;
ErrorMsgsFileName: string;
procedure SetDBGridFormatFilename(const Value: string);
public
IniFile: TIniFile;
constructor Create;
Destructor Destroy;
property DBGridFormatFilename: string read GetDBGridFormatFilename write SetDBGridFormatFilename;
end;

Como fazer para instanciá-la no formulário-padrão de modo que a variável seja acessível nos formulários-filho,
a exemplo de controles adicionados ao formulário-pai?

Tenho lido no fórum sobre as palavras-chave Virtual e
Override aplicadas a métodos. Neste caso, quero herdar a instância por inteiro.

Grato pela atenção.

Henrique


Bruno Belchior
   - 06 dez 2005

crie uma propriedade do tipo da classe que você criou na área pública do formulário...


Pereiramarcos
   - 06 dez 2005

se nao me engano, mecorrijam por favor se estiver errado mas

virtual no metodo significa que ele será implementado na instancia.
override significa que o metodo sera sobreescrito.


Bruno Belchior
   - 07 dez 2005

Virtual -> Método que poderá ser implementado herdando suas características da classe atual ou não, nas suas classes filhas...

Override -> Método que está estendendo (não reimplementando, essa é a idéia do reintroduce) um método escrito nos níveis acima, sendo eles virtual ou dinamic...


Khundalini
   - 10 dez 2005

A palavra reservada virtual serve para identificar métodos que podem ser sobrescritos em classes filha, mas isso não impede que um método virtual não tenha implementação na classe pai.

A palavra reserva que restringe a implementação de um método virtual às suas classes filha é abstract.


Sds,

Rubem Rocha
Manaus, AM