Ocultar campo na Tela

Delphi

27/07/2006

ola pessoal !!!!

Tenho uma tabela feita em AdoQuery com varios campos.
Preciso ocultar alguns campos pois o usuario nao tem acesso, como fazer ???

grato..

Robson.


Robsons

Robsons

Curtidas 0

Respostas

Marco Salles

Marco Salles

27/07/2006

No Dbgrid , acreditando que voce esteja usando este DataWare , tem a opção de Colocar somente os Tfields que voce quer que apareça , na apresentação de seus dados

é so voce clicar sobre o dbgrid e escolher o Colunms Editor

La voce pode inserir todos os Tfields e ir eliminando aqueles que voce não quer que apareça .


GOSTEI 0
Steve_narancic

Steve_narancic

27/07/2006

Ou simplesmente alterar sua propriedade visible para False


GOSTEI 0
Robsons

Robsons

27/07/2006

Nao estou usando um Dbgrid uso Dbedit...

Quando coloco a propriedade do Dbedit.visible:=true ou false
funciona....

Só que eu não sei qual dbedit será pois faço isso dinamicamente...

quando uso AdoQry.Fieldbyname(´campo´).visible:=false ou true nao funciona....

Abraços


GOSTEI 0
Night_man

Night_man

27/07/2006

coloque isso no formShow

  for Idx := 0 to ComponentCount - 1 do
  begin
    if (Components[Idx] is TDBEdit) and
       (SameText((Components[Idx] as TDBEdit).DataField, NomeCampo)) then
       (Components[Idx] as TDBEdit).Hide
  end;



nomecampo eh o nome do campo que deve ser retirado.


GOSTEI 0
Marco Salles

Marco Salles

27/07/2006

Nao estou usando um Dbgrid uso Dbedit...


Não sabia...

Acho que assim Tb Dá

procedure Desabilitar(Campo:String);
var
i:integer;
begin
for i:=0 to form1.ComponentCount-1 do
  begin
    if form1.Components[i] is TDbEdit Then
      if  AnsiUpperCase((TDbEdit(form1.Components[i]).Field.FieldName)) =
          AnsiUpperCase(campo) then
        TDbEdit(form1.Components[i]).Visible:=not TDbEdit(form1.Components[i]).Visible;
  end
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
Desabilitar(´***Nome Do Seu Campo´);
end;



GOSTEI 0
Robsons

Robsons

27/07/2006

funcionou....

valeu galera !!!!

Abraços...


GOSTEI 0
Marco Salles

Marco Salles

27/07/2006

funcionou.... valeu galera !!!!


Blz....


GOSTEI 0
POSTAR