Выставить значение для определенного свойства всех компонент формы или всех компонент нужного классаDelphi , Компоненты и Классы , Свойства и СобытияВыставить значение для определенного свойства всех компонент формы или всех компонент нужного класса
Оформил: 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; Программный процесс, называемый SetProperties, устанавливает значение определенного свойства для всех компонентов определенной классификации или для всех компонентов в форме. Процедура SetProperties принимает три параметра:
Работает следующим образом:
Примеры демонстрируют использование этой процедуры:
Эта процедура может быть полезна, когда вам нужно выполнить какое-либо действие на группе похожих компонентов в вашей форме или приложении. В статье описывается процедура в Delphi, которая позволяет установить значение для определенного свойства всех компонентов формы или компонентов определенного класса. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Свойства и События ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |