Criando Procedure ou functions, nao sei

Delphi

14/10/2004

eae galera...

Beleza?!
Bom, tenho uma duvida aki...
Desenvolvi um projeto...
e tenho nele, uma hora em que preciso desabilitar alguns botoes, diminuir o form e deixar invisivel alguns componentes...
São ao todo 13 linhas soh desses comandos, desabilita, habilita, some, aparece...

Gostaria de saber se tem como criar uma procedure ou function, que eu determine true ou false, e se for false ele some desabilita e tal tal tal...

POderiam me ajudar?!

Estou com esta duvida...

Obrigado

Abraços...


Tremonti

Tremonti

Curtidas 0

Respostas

Vinicius2k

Vinicius2k

14/10/2004

Colega,

Bem simplória, mas acho que seria isso...

procedure MinhaProcedure (habilitar : Boolean = True);
begin
  if habilitar then
  begin
    // seu código que habilita os controles aqui
  end
  else
  begin
    // seu código que desabilita os controles aqui
  end;
end;


As chamadas
MinhaProcedure; // habilita os controles
MinhaProcedure(False); // desabilita os controles


Espero ter ajudado...
T+


GOSTEI 0
Tremonti

Tremonti

14/10/2004

Beleza cara

Vou tentar e jah te mando ok?!

Brigadão...


GOSTEI 0
Tremonti

Tremonti

14/10/2004

Nao funcionou...

Tipo, eu coloco (um trechinho do codigo)
button1.visible := false;
dbedit2.enabled := true;
....

e ele me gera um erro na primeira linha...

Do button1...

O que é?!

Fiz do jeito que me mandou..

Valew ae...

Falow


GOSTEI 0
Paulo_amorim

Paulo_amorim

14/10/2004

Olá

Que erro ele gera?


Tente:
procedure Habilita( Chave: Boolean = True);
begin
  Button1.Visible := Chave;
  DBEdit2.Visible := not (Chave);
end;


Para habilitar o button e desabilitar o DBEdit, chame
Habilita;

para fazer o contrario, chame
habilita(False);



GOSTEI 0
Vinicius2k

Vinicius2k

14/10/2004

Declare esta procedure assim :
Procedure TForm1.MinhaProcedure (habilitar : Boolean = True); 
begin
  //Implementação
end;


E declare-a na unit do formulário, assim :
unit...
....
type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
    Procedure MinhaProcedure (habilitar : Boolean = True);
  end;

var
  Form1: TForm1;

implementation
...



Se vc não quiser fazer isso, precisa referenciar o Form a qual pertencem os componentes que vc está manipulando, assim :
Form1.button1.visible := false;
Form1.dbedit2.enabled := true; 

ou assim :
with Form1 do
begin
  button1.visible := false;
  dbedit2.enabled := true; 
end;


Blz?

T+


GOSTEI 0
Christian_adriano

Christian_adriano

14/10/2004

Ou melhor,


unit...
....
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
Procedure MinhaProcedure (habilitar : Boolean = True);
end;

var
Form1: TForm1;

implementation
...

procedure [b:ba5b391808]TNomeForm.[/b:ba5b391808]MinhaProcedure (habilitar : Boolean = True);
begin
if habilitar then
begin
// seu código que habilita os controles aqui
end
else
begin
// seu código que desabilita os controles aqui
end;
end;

[]´s.

Christian.


GOSTEI 0
Tremonti

Tremonti

14/10/2004

Valew ae Galera...

Era isso mesmo

Faltava eu colocar o nome do form na frente do nome da procedure...

Valew ae Galera...

Uma duvida, eu economizo memoria assim?!


GOSTEI 0
Tremonti

Tremonti

14/10/2004

UP


GOSTEI 0
POSTAR