Манипуляция дочерними окнами
Вы можете написать функции элементы, осуществляющие итерацию
по дочерним окнам некоторого окна с целью выполнения некоторых
действий. Например, вам нужно будет проверить все дочерние блоки
проверки в окне. В этом случае, используйте наследуемую из TWindowsObject функцию-элемент ForEach. Функции-элементы ForEach и
FirstThat позволяют вам выполнять операции со всеми окнами в
списке дочерних окон или с каждым окном по очереди. TWindow предусматривает также ряд других функций, которые позволяют вам определить число дочерних окон в списке или перемещать их.
Функция-итератор ForEach воспринимает в качестве параметра
указатель на функцию. Это может быть функция-элемент или автономная функция. ForEach вызывает функцию (с аргументами TWindow* и
void*) один раз для каждого дочернего объекта. Дочернее окно передается как TWindow*.
Вам может потребоваться написать функции-элементы, осуществляющие итерацию по списку дочерних окон для поиска определенного
дочернего окна. Например, в окне с несколькими дочерними окнами
кнопок с независимой фиксацией вам понадобилось определить первый
установленный блок проверки. Для этого, используйте наследуемую
из TWindowsObject функцию-элемент FirstThat.
Кроме функций-итераторов TWindow предусматривает ряд функций
для поиска и манипуляции с одним дочерним окном:
NumChildren | Возвращает значение, указывающее общее число
дочерних окон в списке |
GetFirstChild | Возвращает TWindows*, указывающий на первую
запись в списке дочерних окон. |
GetLastChild | Возвращает TWindow*, указывающий на последнюю запись в списке дочерних окон. |
Next | Возвращает TWindow*, указывающий на следующую запись в списке дочерних окон. |
Previous | Возвращает TWindow*, указывающий на предыдущую запись в списке дочерних окон. |