Fórum TNotifyEvent dentro de Método é possível?? #529706
25/08/2015
0
Bom dia galera...
eu estou tentando fazer um form dinâmico, mas nesse form tem um timer, e o evento desse timer modifica um label...
tem como colocar o ontimer dentro do metodo...exemplo:
eu estou tentando fazer um form dinâmico, mas nesse form tem um timer, e o evento desse timer modifica um label...
tem como colocar o ontimer dentro do metodo...exemplo:
Function ShowDialogwithHourWin8(dtHora: tDateTime): string;
var
Frm: TForm;
lblTitulo, lblData, lblDesc: TLabel;
txtMinutos: tSpinEdit;
tMinutos: TTimer;
btnOk, btnCancelar: TButton;
ACBrEnterTab1: TACBrEnterTab;
xHora: String;
procedure tMinutoTimer(Sender : TObject);
begin
lblData.Caption := FormatDateTime('hh:MM:ss', dtHora);
end;
begin
result := '';
if FormDefaultVcl = nil then FormDefaultVcl := TFormDefaultVcl.Create(nil);
Frm := TForm.Create(nil);
try
Frm.Left := 0;
Frm.Top := 0;
Frm.BorderStyle := bsNone;
Frm.Caption := '';
Frm.ClientHeight := 282;
Frm.ClientWidth := Screen.Width;
Frm.Color := $00431BB9;
Frm.Font.Charset := DEFAULT_CHARSET;
Frm.Font.Color := clWhite;
Frm.Font.Height := -27;
Frm.Font.Name := 'Segoe UI';
Frm.Font.Size := 20;
Frm.OldCreateOrder := False;
Frm.Position := poScreenCenter;
lblTitulo := TLabel.Create(Frm);
lblData := TLabel.Create(Frm);
lblDesc := TLabel.Create(Frm);
txtMinutos := tSpinEdit.Create(Frm);
tMinutos := TTimer.Create(Frm);
btnOk := TButton.Create(Frm);
btnCancelar := TButton.Create(Frm);
ACBrEnterTab1 := TACBrEnterTab.Create(Frm);
ACBrEnterTab1.EnterAsTab := True;
lblTitulo.Parent := Frm;
lblTitulo.Left := 32;
lblTitulo.Top := 31;
lblTitulo.Height := 37;
lblTitulo.Caption := 'Ajustar hora do ECF (Variação de apenas 5 minutos)';
lblTitulo.Anchors := [akLeft, akTop];
lblDesc.Parent := Frm;
lblDesc.Left := 103;
lblDesc.Top := 155;
lblDesc.Height := 37;
lblDesc.Caption := 'Minutos.';
lblDesc.Anchors := [akLeft, akTop];
txtMinutos.Parent := Frm;
txtMinutos.Left := 32;
txtMinutos.Top := 142;
txtMinutos.Width := 73;
txtMinutos.Height := 47;
txtMinutos.Anchors := [akLeft, akTop];
txtMinutos.Font.Color := $001A1A1A;
txtMinutos.TabOrder := 0;
txtMinutos.Text := '0';
txtMinutos.MaxValue := 5;
txtMinutos.MinValue := -5;
txtMinutos.Increment := 1;
tMinutos.Enabled := true;
tMinutos.Interval := 1000;
tMinutos.OnTimer := tMinutoTimer;
lblData.Parent := Frm;
lblData.Left := 32;
lblData.Top := 82;
lblData.Height := 54;
lblData.Font.Size := 30;
lblData.Caption := xHora;
lblData.Anchors := [akLeft, akTop];
btnOk.Parent := Frm;
btnOk.Left := Screen.Width - 282;
btnOk.Top := 230;
btnOk.Width := 120;
btnOk.Height := 37;
btnOk.Anchors := [akRight, akBottom];
btnOk.Caption := '';
btnOk.ImageAlignment := iaCenter;
btnOk.ImageIndex := 0;
btnOk.TabOrder := 1;
btnOk.Images := FormDefaultVcl.imgDgValorWin8;
btnOk.ModalResult := mrOk;
btnOk.HotImageIndex := 1;
btnOk.SelectedImageIndex := 1;
btnCancelar.Parent := Frm;
btnCancelar.Left := Screen.Width - 138;
btnCancelar.Top := 230;
btnCancelar.Width := 120;
btnCancelar.Height := 37;
btnCancelar.Anchors := [akRight, akBottom];
btnCancelar.Caption := '';
btnCancelar.ImageAlignment := iaCenter;
btnCancelar.ImageIndex := 2;
btnCancelar.TabOrder := 2;
btnCancelar.Images := FormDefaultVcl.imgDgValorWin8;
btnCancelar.ModalResult := mrCancel;
btnCancelar.HotImageIndex := 3;
btnCancelar.SelectedImageIndex := 3;
Frm.ActiveControl := txtMinutos;
Frm.BringToFront;
if Frm.ShowModal = mrOk then
result := txtMinutos.Text
else
result := '';
finally
Frm.Free;
FormDefaultVcl.Release;
FormDefaultVcl := nil;
end;
end;Adhemar Alves
Curtir tópico
+ 0
Responder
Posts
25/08/2015
Adhemar Alves
ele dá esse erro
[dcc32 Error] uFormvclClass.pas(1417): E2009 Incompatible types: 'method pointer and regular procedure'
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)