Fórum Criação de Componente - Mudar o Caption do Form #323143
09/06/2006
0
Estou criando um componente e gostaria de mudar o Caption do Form que estiver utilizando o componente. Ou seja, como faço de dentro da unit do componente pegar o nome da classe que está utilizando o mesmo e assim mudar o seu caption?
Ex. Coloco uma propriedade como ´Serial´ se o serial estiver incorreto escrevo no Caption do Form ´Versão Demostração´
Desde já agradeço
Ex. Coloco uma propriedade como ´Serial´ se o serial estiver incorreto escrevo no Caption do Form ´Versão Demostração´
Desde já agradeço
Eurismar
Curtir tópico
+ 0
Responder
Posts
09/06/2006
Adriano Santos
Estou criando um componente e gostaria de mudar o Caption do Form que estiver utilizando o componente. Ou seja, como faço de dentro da unit do componente pegar o nome da classe que está utilizando o mesmo e assim mudar o seu caption?
Ex. Coloco uma propriedade como ´Serial´ se o serial estiver incorreto escrevo no Caption do Form ´Versão Demostração´
Desde já agradeço
Cara, fiz um teste aki bem básicão e consegui fazer facinho. Dá uma olhada:
[quote:ad8bdddb34=´Código do Componente´]
unit TTesteComps;
interface
uses
SysUtils, Classes, Forms;
type
TTesteComp = class(TComponent)
private
FAtivo: Boolean;
function GetAtivo: Boolean;
procedure SetAtivo(const Value: Boolean);
{ Private declarations }
protected
{ Protected declarations }
public
{ Public declarations }
constructor Create(AOWner: TObject);
procedure Execute;
published
{ Published declarations }
property Ativo : Boolean read GetAtivo write SetAtivo;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents(´Samples´, [TTesteComp]);
end;
{ TTesteComp }
constructor TTesteComp.Create(AOWner: TObject);
begin
Execute;
end;
procedure TTesteComp.Execute;
begin
if FAtivo then
TForm(Self.Owner).Caption := ´Teste do meu componente´
else
TForm(Self.Owner).Caption := TForm(Self.Owner).Caption;
end;
function TTesteComp.GetAtivo: Boolean;
begin
Result := FAtivo;
end;
procedure TTesteComp.SetAtivo(const Value: Boolean);
begin
FAtivo := Value;
end;
end.
[/quote:ad8bdddb34]
[quote:ad8bdddb34=´Como usar´]
procedure TForm1.Button1Click(Sender: TObject); begin TesteComp1.Execute; end;
[/quote:ad8bdddb34]
Responder
Gostei + 0
09/06/2006
Eurismar
Valeu! Adriano. Deu Certo. Muinto Obrigado!
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)