скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Выставить значение для определенного свойства всех компонент формы или всех компонент нужного класса



Оформил: DeeCo

procedure TForm1.SetProperties(ClassName, SomeProperty: string; Value: Integer);
 var
   i: integer;
   PropInfo: PPropInfo;
   Component: TComponent;
 begin
   for i := 0 to ComponentCount - 1 do
   begin
     Component := Components[i];
     if (Component is TControl) and ((Component.ClassName = ClassName)
       or (ClassName = 'AllComponents')) then
     begin
       PropInfo := GetPropInfo(Component.ClassInfo, SomeProperty);
       if Assigned(PropInfo) then
         SetOrdProp(Component, PropInfo, Integer(Value));
     end;
   end;
 end;

 // Examples, Beispiele: 

procedure TForm1.Button1Click(Sender: TObject);
 begin
   // Make all components readonly 
  SetProperties('AllComponents', 'readonly', 1);
   // Make all components of Class TEdit invisible 
  SetProperties('TEdit', 'visible', 0);
   // Set the Height Property of all TLabels 
  SetProperties('TLabel', 'Height', 30);
   // Set ShowHint to false for all components 
  SetProperties('AllComponents', 'ShowHint', 0);
   // Disable all TMemo Components 
  SetProperties('TMemo', 'Enabled', 0);
   // Set Autosize to true for all TLabels 
  SetProperties('TLabel', 'Autosize', 1);
 end;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook