Кто должен отвечать за сабж — контейнер или сами контролы?
Я покопался в mfc, там вроде бы UIDeActivate делает контейнер посредством
отлова WM_KILLFOCUS в PreTranslateMessage для всех контролов.
А что делать когда PreTranslateMessage нет — например когда несколько activeX живут на другом activeX
Здравствуйте Vishen, Вы писали:
V>Кто должен отвечать за сабж — контейнер или сами контролы?
Контейнер дергает за IOleInPlaceObject::UIDeactivate контролов.
V>Я покопался в mfc, там вроде бы UIDeActivate делает контейнер посредством
V>отлова WM_KILLFOCUS в PreTranslateMessage для всех контролов.
V>А что делать когда PreTranslateMessage нет — например когда несколько activeX живут на другом activeX
Ну дык тот контрол, который контейнер, не перестает быть контролом и может расчитывать на то, что его контейнер вовремя вызовет у него метод IOleInPlaceObject::UIDeactivate
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
S>Ну дык тот контрол, который контейнер, не перестает быть контролом и может S>расчитывать на то, что его контейнер вовремя вызовет у него метод S>IOleInPlaceObject::UIDeactivate
Это то понятно, а как быть с теми контролами которые живут контроле-контейнере,
кто и откуда будет им вызывать IOleInPlaceObject::UIDeactivate ?
Здравствуйте Vishen, Вы писали:
S>>Ну дык тот контрол, который контейнер, не перестает быть контролом и может S>расчитывать на то, что его контейнер вовремя вызовет у него метод S>IOleInPlaceObject::UIDeactivate
V>Это то понятно, а как быть с теми контролами которые живут контроле-контейнере,
V>кто и откуда будет им вызывать IOleInPlaceObject::UIDeactivate ?
Ну так я и говорю — контроле-контейнере и должен в своем "контрольском" методе помнить, что он еще и контейнер и вызывать UIDeactivate дочерних контролов.
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.