Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Duvidas em criar componente


robinhocne

Pergunta

Pessoal,

Procurei mas não achei, mas creio que procurei errado, mas vamos la.....

Estou criando um TEdit com a cor no OnExit e OnEnter:

unit Texto;

interface

uses
  SysUtils, Classes, Controls, StdCtrls, Graphics;

type
  TTexto = class(TEdit)
  private
    OnEnterColor: TColor;
    OnExitColor: TColor;
  protected
    Procedure ColocaCor(Sender: TObject);
    Procedure RetiraCor(Sender: TObject);
    Procedure ImportaCor(Value: TColor);
    Procedure ExportaCor(Value: TColor);
  public
    Constructor Create(Aowner: TComponent);override;
  published
    property CorOnEnter: TColor read OnEnterColor
                                write ImportaCor;
    property CorOnExit: TColor read OnExitColor
                               write ExportaCor;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Robinho', [TTexto]);
end;


procedure TTexto.ColocaCor(Sender: TObject);
begin

  if Sender is TEdit then
    begin
      TEdit(Sender).Color := OnEnterColor;
    end;

end;

constructor TTexto.Create(Aowner: TComponent);
begin
  inherited;
  OnEnterColor := clSkyBlue;
  OnExitColor  := clWindow;
  OnEnter      := ColocaCor;
  OnExit       := RetiraCor;
end;

procedure TTexto.ExportaCor(Value: TColor);
begin

  OnExitColor := Value;

end;

procedure TTexto.ImportaCor(Value: TColor);
begin

  OnEnterColor := Value;

end;

procedure TTexto.RetiraCor(Sender: TObject);
begin

  if Sender is TEdit then
    begin
      TEdit(Sender).Color := OnExitColor;
    end;


end;

end.

Mas queria colocar só mais uma propriedade nele, para que automaticamente já fica com o heigth com valor 20, mas ai que vem a duvida, estou querendo fazer isso para o TComboBox, TMemo, TCurrencyEdit, TDateEdit, mas ai eu tenho que fazer um por um....não posso fazer tudo nesse mesmo package ? e como posso fazer ?

Desde já agradeço.

Editado por robinhocne
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0
estou querendo fazer isso para o TComboBox, TMemo, TCurrencyEdit, TDateEdit, mas ai eu tenho que fazer um por um....não posso fazer tudo nesse mesmo package ? e como posso fazer ?

depois que montar um por um, voce pode adiciona-los a um unico package para instalar

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
estou querendo fazer isso para o TComboBox, TMemo, TCurrencyEdit, TDateEdit, mas ai eu tenho que fazer um por um....não posso fazer tudo nesse mesmo package ? e como posso fazer ?

depois que montar um por um, voce pode adiciona-los a um unico package para instalar

abraço

E como eu faço para adicionar em um só package ?

Link para o comentário
Compartilhar em outros sites

  • 0
E como eu faço para adicionar em um só package ?

Vá em Menu > Component > Install Component > Into new Package

clique no botão < Browse... > para procurar os arquivos .pas ou .dcu

Em Package file name: coloque o nome do seu pacote de componentes

Clique em OK ... mas não instale ainda

feche a janela onde aparece o arquivo .pas de seu componente

Na janela menor do package, clique em < Add >

Procure pelos outros .pas ( outros componentes que voce criou )

Clique em < OK > para ir adicionando a lista

Depois clique em < Install > para instalar todos os componentes desse pacote

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
E como eu faço para adicionar em um só package ?

Vá em Menu > Component > Install Component > Into new Package

clique no botão < Browse... > para procurar os arquivos .pas ou .dcu

Em Package file name: coloque o nome do seu pacote de componentes

Clique em OK ... mas não instale ainda

feche a janela onde aparece o arquivo .pas de seu componente

Na janela menor do package, clique em < Add >

Procure pelos outros .pas ( outros componentes que voce criou )

Clique em < OK > para ir adicionando a lista

Depois clique em < Install > para instalar todos os componentes desse pacote

abraço

Muito bom Jhonas, deu certinho.....

só mais uma duvida....

Eu quero já deixar a propriedade Heigth do TEdit com o valor 20, como faço isso ? tentei aqui e não deu nada....

desde já agradeço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...