Então a melhor forma de resolver seu problema é através de agregação.
Ou seja, agregue a lógica que você não quer replicar em uma outra classe, e utilize-a de dentro desse seu TEditBase [ ]s De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Vinicius Enviada em: terça-feira, 3 de fevereiro de 2009 08:20 Para: delphi-br@yahoogrupos.com.br Assunto: Re: [delphi-br] Dúvida em Herança Eu tentei com interface tbem...mas no meu caso não vai adiantar...eu tenho que implementar os métodos da interface em todas as classes que herdam dela, e eu não queria fazer isso, no meu caso acho que somente herança múltipla me ajudaria mesmo... Vocês tem alguma idéia do que seria a saída mais elegante ? Rubem Nascimento da Rocha escreveu: > > > O q vc quer fazer chama-se herança múltipla de classes, ou seja, algo > assim: > > type > TEditbase = class(TCustomEdit, TClassBase) > > e isso em Object Pascal não é possível, pq o Object Pascal não suporta > herança múltipla. O que vc deveria ter feito era criar uma interface > contendo as declarações dos métodos que vc implementou em TClassBase > e, depois, criar um componente descendente de TCustomEdit e que > implementasse essa interface. > > type > IClassBase = interface > { declare aqui os métodos que existem em TClassBase } > end; > > TEditBase = class(TCustomEdit, IClassBase) > { aqui, além de declarar os métodos de IClassBase, e seus escopos > apropriados (private, protected ou public), vc os implementaria > também! } > end; > > > > TEditBase = class(TEdit, IClassBase) > { aqui, além de declarar os métodos de IClassBase, e seus escopos > apropriados (private, protected ou public), vc os implementaria > também! } > end; > > Em Object Pascal, uma classe pode implementar 'n' interfaces, mas só > pode ser descendente de apenas uma única classe. > > Boa sorte. > Sds. > > ________________________________ > > To: delphi-br@yahoogrupos.com.br <mailto:delphi-br%40yahoogrupos.com.br> > > <mailto:delphi-br%40yahoogrupos.com.br> > > From: vinic...@msisolucoes.com.br <mailto:vinicius%40msisolucoes.com.br> > > <mailto:vinicius%40msisolucoes.com.br> > > Date: Mon, 2 Feb 2009 14:02:50 -0200 > > Subject: [delphi-br] Dúvida em Herança > > > > > > Pessoal, tenho uma classe derivada de TWinControl, com vários métodos > > > > implementados, chamada de TClassBase > > > > Agora eu quero fazer um componente derivado de TEdit, com as > > > > características da TClassBase > > > > Isso é possível ??? > > > > > > > > Obrigado. > > > __________________________________________________________ > Receba GRÁTIS as mensagens do Messenger no seu celular quando você > estiver offline. Conheça o MSN Mobile! > http://mobile.live.com/signup/signup2.aspx?lc=pt-br > <http://mobile.live.com/signup/signup2.aspx?lc=pt-br> > > [As partes desta mensagem que não continham texto foram removidas]