Felipe,
Perfeitamente possivel.
Aliás esta é uma tecnica que uso com a versão free do delphi (Turbo Explorer),
onde que só uso componentes free e com código fonte não estou violando a
licença do mesmo.
Quer um exemplo? você pode praticar isto com qualquer componente que você tem,
inclusive com os já instalados no delphi. Para fazer isto basta ter na sua uses
a unit do componente e criar uma variavel com o tipo 'classe' do mesmo.
Ex. criar um tbutton.
Coloque StdCtrls na uses (eu particularmente sempre adiciono na uses de cima)
e na parte Private do seu form,
defina a variavel.
Private
fMeuButton : TButton;
no constructor do form (normalmente eu sobrescrevo o constructor, mas vai lá
clique duplo no form e adicone o seguinte código para criar seu componente).
Procedure TForm1.OnCreate(Sender : TObject);
begin
//O self neste caso é o proprio form
fMeuButton := TButton.Create(Self);
//Parent é onde o button vai ser exibido, caso tenha um panel, coloque o nome
dele.
fMeuButton.Parent := Self;
//Troco o caption...
fMeuButton.Caption := 'Clique aqui';
//... e ai vai.
end;
NESTE CASO, teoricamente voce não precisa se preocupar em liberar a memoria do
button, pois o FORM é o proprietario dele e vai fazer isto automaticamente no
destructor; Caso deseje fazer isto (eu sempre faço por outras razões) coloque
no evento OnDestroy;
fMeuButton.Free;
Atenc;
Elazar
De: felipe govoni govoni.fel...@gmail.com
Para: delphi-br@yahoogrupos.com.br
Enviadas: Qui, Outubro 8, 2009 9:36:10 AM
Assunto: [delphi-br] alterar componente
bom dia
tive uma ideia mas noa sei se é possivel, eu noa costumo usar componentes
de terceiros, e gostaria de saber se tem como pegar um conponente com codigo
fonte
e utilizar no meu projeto sem instalar ele, como se eu fosse apenas
adicionar a unit ao projeto.
isso é possivel?
--
Felipe Govoni
-
GOVONI Sistemas
Fone 8472-8718
www.govoni.com. br
[As partes desta mensagem que não continham texto foram removidas]
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com
[As partes desta mensagem que não continham texto foram removidas]