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
  #7  
Antiguo 23-09-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
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.

Aunque no pretende ser código de alto vuelo con el uso de RTTI ( esa taréa se la dejo a Neftalí ), te completé el procedimiento para que contemple algunos tipos más de propiedades. (no podía ser tan haragán...).
Código Delphi [-]
uses TypInfo;

procedure TForm1.SetCtrlsProp(Lista: array of string; AProp,Value: Variant);
var
  i,j: Integer;
  PInfo: PPropInfo;
begin
  for i:= High(Lista) downto Low(Lista) do
  begin
    j:= 0;
    while(j < ControlCount)and(Controls[j].Name <> Lista[i])do Inc(j);
    if(j < ControlCount)and(Controls[j].Name = Lista[i]) then
    begin
      PInfo:= GetPropInfo(Controls[j].ClassInfo, AProp);
      if PInfo <> nil then
      begin
        case PInfo^.PropType^.Kind of
          tkString,tkLString:SetStrProp(Controls[j],Aprop,VarToStr(Value));
          tkInteger: SetOrdProp(Controls[j], AProp, StrToInt(Value));
          tkEnumeration: SetOrdProp(Controls[j], AProp,Value);
          else 
            raise Exception.Create('caso no contemplado');
        end;
      end;
    end;
  end;
end;

Ahora podés hacer por ejemplo:
Código Delphi [-]
  SetCtrlsProp(['Edit1', 'Edit3', 'Edit2'], 'Text', 'NUEVO TEXTO');
  SetCtrlsProp(['DBGrid1', 'DBEdit1', 'DBEdit2'], 'ReadOnly', True);
  SetCtrlsProp(['Edit1', 'Edit2', 'DBGrid1'], 'Color', clYellow);
  SetCtrlsProp(['Edit1'], 'Cursor', crHandPoint);

Un saludo.
__________________
Daniel Didriksen

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

Última edición por ecfisa fecha: 23-09-2011 a las 00:49:26.
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
Seleccionar valor en un rango de datos jourdan Firebird e Interbase 4 19-05-2010 07:59:54
Como seleccionar campos de una tabla sin saber cuantos van a seleccionar david duarte SQL 7 05-04-2010 21:15:43
Como seleccionar un rango de filas en un DBGrid? YAlvarez OOP 1 09-05-2008 19:54:47
Los DBEdits drakkon Conexión con bases de datos 1 12-06-2007 02:47:41
Utilizar SetRange para seleccionar rango de una tabla verodelphi Lazarus, FreePascal, Kylix, etc. 0 20-09-2006 13:32:20


La franja horaria es GMT +2. Ahora son las 03:07:18.


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