Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 29-11-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 17
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Este es un tipico caso de herencia.. donde todos tus forms tienen que hacer lo mismo..

Podrias hacer algo asi:


Código Delphi [-]
unit UBaseForm;

interface

uses
  Forms,
  Controls;

type
  TBaseForm = class(TForm)
  public
    procedure ToggleControls(const IsEnabled: Boolean); overload; virtual;
    procedure ToggleControls(const IsEnabled: Boolean; const ControlClass: TControlClass); overload; virtual;
  end;

implementation

{ TBaseForm }

procedure TBaseForm.ToggleControls(const IsEnabled: Boolean);
var
  I: Integer;
begin
  for I := 0 to ControlCount - 1 do
    Controls[i].Enabled := IsEnabled;
end;

procedure TBaseForm.ToggleControls(const IsEnabled: Boolean; const ControlClass: TControlClass);
var
  I: Integer;
begin
  for I := 0 to ControlCount - 1 do
    if Controls[i].ClassType = ControlClass then
      Controls[i].Enabled := IsEnabled;
end;

Ejemplo de uso:


Código Delphi [-]
unit Main;

interface

uses
  UBaseForm,
  Windows,
  Messages,
  SysUtils,
  Variants,
  Classes,
  Graphics,
  Controls,
  Forms,
  Dialogs,
  StdCtrls;

type
  TForm1 = class(TBaseForm) // --> Ahora tu ancestro es TBaseForm
    Edit1: TEdit;
    Memo1: TMemo;
    btnDisable: TButton;
    btnEnable: TButton;
    Button1: TButton;
    Edit2: TEdit;
    procedure btnDisableClick(Sender: TObject);
    procedure btnEnableClick(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnDisableClick(Sender: TObject);
begin
  // deshabilitar todos los controles
  ToggleControls(False);

  // este boton lo dejo siempre habilitado, sino no puedo hacer mas nada
  btnEnable.Enabled := True;
end;

procedure TForm1.btnEnableClick(Sender: TObject);
begin
  // Habilitar todos los controles
  ToggleControls(True);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  // solo Edits, invertir el valor
  ToggleControls(not Edit1.Enabled, TEdit);
end;

end.
Responder Con Cita
 


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
Manipular objetos desde otro objeto en otro form Nicolas_2011 Delphi para la web 8 17-11-2012 18:12:51
Problemas al manipular form reivaj_bo Varios 1 16-11-2009 16:28:35
Leer mensajes, solo desde la unit del Form? paubar Varios 2 22-08-2007 23:52:39
Saber el nombre de la form desde una unit nueva richi Varios 3 07-11-2006 10:14:28
Escribir algo en un Tedit desde otro form taru Varios 9 20-07-2006 15:43:52


La franja horaria es GMT +2. Ahora son las 09:40:26.


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