Цитата:
Сообщение от
HorrR
Ситуация такая - есть на форме 2 ДС. Нажимается кнопка. При нажатии отрабатывается метод того ДС, на котором последним был остановлен фокус.
Для данной цели Active на DataSourcе не подходит, так как, если рекорд уже был выбран, при переходе на другой датасоурс и возврате на ЭТОТ ЖЕ рекорд, ничего не произойдет, ибо новая запись на данном дейтасоурсе не была выбрана.
И если, допустим, в случае грида можно просто перегрузить gotFocus, то как быть с отдельными контролами, разбросанными по group?. Неужели перегружать gotFocus на каждом из них?
Неоднозначная имхо постановка вопроса.
Если вы подразумеваете под "на котором последним был остановлен фокус" - тот, на который последний раз тыркнул пользователь - то да, придётся на все контролы вешать, иначе не знаю как. Естественно не на каждый стринг-эдит, а более оптимально - на группы
При этом с gotFocus вы явно намучаетесь, т.к. его срабатываение - вещь не тривиальная - например при открыти формы он не отработает на вашем первом гриде, как наверное хотелось бы.