Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-12-2011
leandro085 leandro085 is offline
Miembro
 
Registrado: feb 2008
Posts: 19
Poder: 0
leandro085 Va por buen camino
Post procedimiento para habilitar o inhabilitar botones

hola como están

quisiera saber si existe alguna forma de armar un procedimiento para habilitar botones y o des-habilitar botones.
porque lo intento de hacer de esta forma pero no me reconoce los botones.

Código Delphi [-]
procedure habilitar;
begin
  btNuevo.Enabled:=true;
  BtEliminar.Enabled:=true;
  btModificar.Enabled:=true;
  DBNIva.Enabled:=true;
end;
Responder Con Cita
  #2  
Antiguo 07-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Leandro.

Un modo puede ser:
Código Delphi [-]
procedure TForm1.ButtonsOnOff(Activo: Boolean);
begin
  ...
  Button2.Enabled:= Activo;
  Button3.Enabled:= Activo;
  ... 
end;

Otro:
Código Delphi [-]
procedure TForm1.ButtonsOnOff(Activo: Boolean);
var
  i: Integer;
begin
  for i:= 0 to ComponentCount -1 do
    if Components[i] is TButton then
      TButton(Components[i]).Enabled:= Activo;
end;
Este último deshabilita todos los botones del form.

Llamada:
Código Delphi [-]
  ButtonsOnOff(False); // Deshabilitar;
  ButtonsOnOff(True); // Habilitar;

De todas formas creo que no te reconoce los botones por que los estás referenciando desde un procedimiento y no un método del form, intentá así:
Código Delphi [-]
...
  TForm1 = class(TForm);
  ...
  private
     procedure habilitar;
  end;
...
implementation

procedure TForm1.habilitar;
...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 07-12-2011 a las 01:08:17.
Responder Con Cita
  #3  
Antiguo 07-12-2011
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
utiliza una funcion

yo lo hago asi
[delphi]

declaras la funcion en:

Código Delphi [-]
private
    
     function botones(WBoton:Integer):Integer;

y despues
Código Delphi [-]

function Tform_capt_pro.botones(Wboton:Integer):Integer;
begin
  if WBoton=0 then //insertar  aqui puedes usar una cadena por ejemplo insertar pero tendrias que cambiar la variable a string
    begin
      self.pgc1.Enabled:=True;
      self.btn_guardar.Enabled:=True;
      self.btn_insertar.Enabled:=False;
    end;
if WBoton='insertar then //insertar  aqui puedes usar una cadena por ejemplo insertar pero tendrias que cambiar la variable a string
    begin
      self.pgc1.Enabled:=True;
      self.btn_guardar.Enabled:=True;
      self.btn_insertar.Enabled:=False;
    end;    

end;

y para llamarla
Código Delphi [-]
botones(2); // o la palabra insertar modificar

Última edición por microbiano fecha: 07-12-2011 a las 01:06:18. Razón: por error en los determinadas de codigo
Responder Con Cita
  #4  
Antiguo 07-12-2011
leandro085 leandro085 is offline
Miembro
 
Registrado: feb 2008
Posts: 19
Poder: 0
leandro085 Va por buen camino
Gracias a los dos!!

Me sirvieron para entender un poquito mas el tema de funciones y procedimientos

lo solucione con una función y me anduvo, pero quiero que me digan si realmente si esta bien echo.

La declare asi

Código Delphi [-]
function botones(accbot:boolean):boolean;

la función así
Código Delphi [-]
function TFormIva.botones(accbot:boolean):boolean;
begin  
btNuevo.Enabled:=accbot;
btmodificar.Enabled:=accbot;
bteliminar.Enabled:=accbot;
end;

y lo llamo asi
Código Delphi [-]
botones(true);    // o de esta manera

botones(false);

Gracias de nuevo.

Última edición por leandro085 fecha: 07-12-2011 a las 02:48:20.
Responder Con Cita
  #5  
Antiguo 07-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por leandro085 Ver Mensaje
lo solucione con una función y me anduvo, pero quiero que me digan si realmente si esta bien echo.
Si las llamadas
Código Delphi [-]
  botones(true);    // o de esta manera
  botones(false);
las haces dentro de un método de TFormIva, es correcto. (ya que sería como hacer Self.botones(true) )

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 07-12-2011
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
Hola,

de todas formas has declarado una función cuando, creo yo, lo que te hacía falta es un procedimiento, procedure en lugar de function, por lo que has comentado no parece necesario que al acabar de habilitar o deshabilitar los botones te devuelva un true o un false.

Saludos.
Responder Con Cita
  #7  
Antiguo 07-12-2011
leandro085 leandro085 is offline
Miembro
 
Registrado: feb 2008
Posts: 19
Poder: 0
leandro085 Va por buen camino
Post

Cita:
Empezado por ElDioni Ver Mensaje
Hola,

de todas formas has declarado una función cuando, creo yo, lo que te hacía falta es un procedimiento, procedure en lugar de function, por lo que has comentado no parece necesario que al acabar de habilitar o deshabilitar los botones te devuelva un true o un false.

Saludos.
lo que pasa es que con un procedimiento no me reconocía los botones del form la única forma de poderlo hacer con un una funcion era la siguiente pero no podía pesarla el parámetro de true o false
Código Delphi [-]
procedure habilitar;
begin
  btNuevo.Enabled:=true;
  BtEliminar.Enabled:=true;
  btModificar.Enabled:=true;
  DBNIva.Enabled:=true;
end;

en cambio con la función lo puede hacer pudiendo pesarle una el parámetro para activarlo o desactivarlo.
Responder Con Cita
  #8  
Antiguo 12-12-2011
Avatar de PepeLolo
PepeLolo PepeLolo is offline
Miembro
 
Registrado: jun 2003
Ubicación: Fuenlabrada - Madrid - Espagna
Posts: 265
Poder: 21
PepeLolo Va por buen camino
Cita:
Empezado por leandro085 Ver Mensaje
hola como están

quisiera saber si existe alguna forma de armar un procedimiento para habilitar botones y o des-habilitar botones.
porque lo intento de hacer de esta forma pero no me reconoce los botones.

Código Delphi [-]
procedure habilitar;
begin
  btNuevo.Enabled:=true;
  BtEliminar.Enabled:=true;
  btModificar.Enabled:=true;
  DBNIva.Enabled:=true;
end;
Yo que tú crearía un componente que derive de TButton al que puedas asociar un Datasource y que el comportamiento de este dependa del estado del DataSource (Browse, Insertar, Editar, etc..)

Tienes el código necesario en la unidad DBCtrls.pas, componente "TDBNavigator".
__________________
PepeLolo
El hombre el único virus que mide más de unas cuantas micras
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Glyphs para Botones, sirven los ICO para esto ? mtpedro Gráficos 8 01-02-2006 10:54:59
Inhabilitar Internet nefy Internet 0 13-07-2004 22:04:51
Habilitar/Deshabilitar botones permanentemente melanthea C++ Builder 9 18-06-2004 16:36:31
si hay propiedad cancel para los botones, ¿la hay para enter? soyhugo Varios 2 16-02-2004 16:49:53


La franja horaria es GMT +2. Ahora son las 11:24:56.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi