Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Получить доступ к элементам TRadioGroup

Delphi , Компоненты и Классы , Флажки

Получить доступ к элементам TRadioGroup

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ 
  Die Eigenschaft Controls fuhrt alle untergeordneten Komponenten eines Steuerelements 
  (Hier z.B TRadioGroup) auf. 
  Controls ist hilfreich, wenn auf die untergeordneten Steuerelemente mit einer Zahl und 
  nicht mit ihrem Namen Bezug genommen werden soll. 
  So kann Controls beispielsweise verwendet werden, um in einer TRadioGroup Eigenschaften 
  der RadioButtons zu manipulieren (Hints anzeigen, verstecken,...) 
}

 { 
  The property Controls lists all child controls of a Control.(Here a TRadioGroup) 
  Controls is an array of all the child controls. 
  The Controls property is convenient for referring to the children of a control 
  by number rather than name. 
  For example, Controls may be used to change properties of the Radiobuttons in a 
  TRadioGroup (showing hints, hiding items,...) 
}


 {1. *******************************************************}
 // Deactivates/activates a specified item of a TRadioGroup 
// Deaktiviert/aktiviert in einer TRadioGroup ein bestimmtes Item 

procedure RGB_EnableItem(RadioGroup: TRadioGroup; ItemIndex: Byte; bEnabled: Boolean);
 begin
   RadioGroup.Controls[ItemIndex].Enabled := bEnabled;
 end;

 // Example: Deactivates the 2. Item  (Index starts at 0) 
// Beispiel: 2. Item deaktivieren (Index beginnt bei 0) 

procedure TForm1.Button1Click(Sender: TObject);
 begin
   RGB_EnableItem(RadioGroup1, 1, False);
 end;


 {2. *******************************************************}
 // Hides/Shows a specified item of a TRadioGroup 
// Versteckt oder zeigt ein bestimmtes Item in einer TRadioGroup an. 
procedure RGB_ShowItem(RadioGroup: TRadioGroup; ItemIndex: Byte; bVisible: Boolean);
 begin
   RadioGroup.Controls[ItemIndex].Visible := bVisible;
 end;

 // Example: Hides the 2. Item  (Index starts at 0) 
// Beispiel: 2. Item verstecken (Index beginnt bei 0) 
procedure TForm1.Button2Click(Sender: TObject);
 begin
   RGB_ShowItem(RadioGroup1, 1, False);
 end;


 {3. *******************************************************}
 // Show Hints for TRadioGroup items 
// Hints fur die Items in der TRadioGroup anzeigen 
procedure TForm1.Button3Click(Sender: TObject);
 var
   i: Byte;
 begin
   for i := 0 to RadioGroup1.ControlCount - 1 do
   begin
     RadioGroup1.Controls[i].ShowHint := True;
     RadioGroup1.Controls[i].Hint := (Radiogroup1.Controls[i] as TRadiobutton).Caption;
   end;
 end;

 {4. *******************************************************}
 // Focus a specified Radiobutton in a TRadioGroup 
// Ein bestimmter Radiobutton einer TRadioGroup fokussieren 
procedure RGB_FocusItem(RadioGroup: TRadioGroup; ItemIndex: Byte);
 var
   RadiogroupClick: TNotifyEvent;
 begin
   if ItemIndex >= 0 then
   begin
     RadioGroup.OnClick := nil;
     (RadioGroup.Controls[1] as TRadiobutton).SetFocus;
     RadioGroup.OnClick := RadiogroupClick;
   end;
 end;

 // Example: Focus the 2. Radiobutton 
// Beispiel: Den 2. Radiobutton fokussieren 
procedure TForm1.Button4Click(Sender: TObject);
 begin
   RGB_FocusItem(RadioGroup1, 1);
 end;

Пример программирования на языке Delphi, демонстрирующий доступ и манипуляцию элементами компонента TRadioGroup. В примере представлены четыре процедуры, которые могут использоваться для:

  1. Включения или отключения конкретного элемента в радиогруппе.
  2. Скрывания или отображения конкретного элемента в радиогруппе.
  3. Отображения подсказок для всех элементов в радиогруппе.
  4. Фокусировки конкретного элемента (кнопки) в радиогруппе.

Вот подробное описание каждой процедуры:

RGB_EnableItem Эта процедура принимает три параметра: RadioGroup (компонент TRadioGroup), ItemIndex (индекс элемента для включения или отключения, начиная с 0) и bEnabled (логическое значение, указывающее, включать или отключать элемент).

Процедура использует свойство Controls компонента радиогруппы для доступа к дочерним контролам (кнопкам) и устанавливает свойство Enabled каждого кнопки соответственно.

RGB_ShowItem Эта процедура принимает три параметра: RadioGroup (компонент TRadioGroup), ItemIndex (индекс элемента для скрытия или отображения, начиная с 0) и bVisible (логическое значение, указывающее, скрыть или отобразить элемент).

Процедура использует свойство Controls компонента радиогруппы для доступа к дочерним контролам (кнопкам) и устанавливает свойство Visible каждого кнопки соответственно.

RGB_ShowHints Эта процедура используется для отображения подсказок для всех элементов в радиогруппе. Она использует цикл для перебора дочерних контролей (кнопок) и устанавливает свойство ShowHint каждой кнопки в значение True. Кроме того, она устанавливает текст подсказки для каждой кнопки на основе ее заголовка.

RGB_FocusItem Эта процедура принимает два параметра: RadioGroup (компонент TRadioGroup) и ItemIndex (индекс элемента для фокусировки, начиная с 0).

Процедура сначала очищает обработчик события OnClick компонента радиогруппы, затем устанавливает фокус на указанной кнопке с помощью метода SetFocus. Наконец, она возвращает оригинальный обработчик события OnClick.

В целом, эти процедуры предоставляют способ манипуляции элементами компонента TRadioGroup в Delphi, включая включение или отключение элементов, скрытие или отображение элементов, отображение подсказок для всех элементов и фокусировку конкретных элементов (кнопок).

Получить доступ к элементам TRadioGroup: описаны четыре процедуры для управления радио-группами в Delphi, включая деактивацию и активацию отдельных элементов, скрытие или отображение элементов, отображение подсказок и фокусировку на отдельном элементе.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Флажки ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-10-24 20:02:33/0.0036709308624268/0