Bom dia família Script Brasil. Gostaria da ajuda de vocês pra conseguir herdar esse componente. O componente em teoria é simples... Eu herdei o IdFTP da palheta Indy. Depois de ter feito isso criei uma variavel ProgressBar e gerei os métodos de Get, Set para que ele possa pegar o ProgressBar selecionado pelo desenvolvedor. Mas não estou conseguindo encontrar a parte onde ele faz está o evento onWorkBegin; onWork; onWorkEnd do IdFTP para tentar dar um overrite e colocar mais coisas nesse evento... Alguém pode me ajudar por favor? O código até agora está assim:
unit NewIdFTP;
interface
uses
SysUtils, Classes, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP, ComCtrls;
type
//Caso você precise procurar procure na unit "IDComponent"
TNewFtpIdFTP = class(TIdFTP)
private
FProgressBar : TProgressBar;
{ Private declarations }
protected
procedure GetProgressBar (Sender : TObject);
procedure SetProgressBar (Value : TProgressBar);
{ Protected declarations }
public
{ Public declarations }
published
property ProgressBar: TProgressBar read FProgressBar write FProgressBar;
{ Published declarations }
end;
procedure Register;
implementation
uses Math, StrUtils;
procedure Register;
begin
RegisterComponents('Meus Componentes', [TNewFtpIdFTP]);
end;
{ TNewFtpIdFTP }
procedure TNewFtpIdFTP.GetProgressBar(Sender: TObject);
begin
if Sender is TProgressBar then
TProgressBar(Sender) := FProgressBar;
end;
procedure TNewFtpIdFTP.SetProgressBar(Value : TProgressBar);
begin
FProgressBar := Value;
end;
end.
Pergunta
LucAlucard
Bom dia família Script Brasil. Gostaria da ajuda de vocês pra conseguir herdar esse componente. O componente em teoria é simples... Eu herdei o IdFTP da palheta Indy. Depois de ter feito isso criei uma variavel ProgressBar e gerei os métodos de Get, Set para que ele possa pegar o ProgressBar selecionado pelo desenvolvedor. Mas não estou conseguindo encontrar a parte onde ele faz está o evento onWorkBegin; onWork; onWorkEnd do IdFTP para tentar dar um overrite e colocar mais coisas nesse evento... Alguém pode me ajudar por favor? O código até agora está assim:
unit NewIdFTP; interface uses SysUtils, Classes, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, ComCtrls; type //Caso você precise procurar procure na unit "IDComponent" TNewFtpIdFTP = class(TIdFTP) private FProgressBar : TProgressBar; { Private declarations } protected procedure GetProgressBar (Sender : TObject); procedure SetProgressBar (Value : TProgressBar); { Protected declarations } public { Public declarations } published property ProgressBar: TProgressBar read FProgressBar write FProgressBar; { Published declarations } end; procedure Register; implementation uses Math, StrUtils; procedure Register; begin RegisterComponents('Meus Componentes', [TNewFtpIdFTP]); end; { TNewFtpIdFTP } procedure TNewFtpIdFTP.GetProgressBar(Sender: TObject); begin if Sender is TProgressBar then TProgressBar(Sender) := FProgressBar; end; procedure TNewFtpIdFTP.SetProgressBar(Value : TProgressBar); begin FProgressBar := Value; end; end.Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
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.