Criar procedure com estado dos Botões no Data Module

07/04/2013

0

Gostaria de Sabemos como fazer uma procedure no Data Module, onde posso colocar os estado dos botões do formulario.

Exemplo: Botao incluir :
btnIncluir.Enabled := True;
btnSalvar.Enabled := False;
btnEditar.Enabled := True;
btnExcluir.Enabled := True;

E pode fazer isso para todos os botões no Datamodule, afim de apenas instancia em cada form, pois estou desenvolvendo uma aplicação um tanto grande em DATASNAP, e perco um tempo grande com os mesmo.

Se for possivel como instancia-los no evento onclick di botão
Flavio Silva

Flavio Silva

Responder

Posts

07/04/2013

Marco Salles

Gostaria de Sabemos como fazer uma procedure no Data Module, onde posso colocar os estado dos botões do formulario.

Exemplo: Botao incluir :
btnIncluir.Enabled := True;
btnSalvar.Enabled := False;
btnEditar.Enabled := True;
btnExcluir.Enabled := True;

E pode fazer isso para todos os botões no Datamodule, afim de apenas instancia em cada form, pois estou desenvolvendo uma aplicação um tanto grande em DATASNAP, e perco um tempo grande com os mesmo.

Se for possivel como instancia-los no evento onclick di botão


Boa noite Flavinho . Você pode varrer os componentes do um Container Habilitando e desabilitando seguindo o valor da chave
e da Tag definido para esses controles
Por exemplo .. Buton com Tag igual a Um <Incluir , Editar , Excluir> .. Button com Tag igais a dois (Salvar , Cancelar)

procedure Inibir(AOwner:TWinControl;T:TClass;const AChave:Boolean);
var
C:TComponent;
begin
for C in AOwner do
  if C is T then
    if C.tag = 1 then
       Tcontrol(C).Enabled:=Achave
    else
       TControl(C).Enabled:=not Achave;
end;


para utlizar basta chamar assim

Inibir(A instancia do Form ProPrietário,Classe dos Controles,false ou True);

tipo

Inibir(self,TButton,false);

[]sds
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar