Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

программно убить фокус Calendar

411
24 февраля 2010 года
Serzh
136 / / 09.07.2003
Он не летит...
Точнее, летит, но как сам того пожелает...

А далее идет повествование никак не связанное с эпиграфом.

В Excel на рабочем листе созданы два ActiveX - стандартный ComboBox и "нестандартный" Calendar (прицеплен через MSCAL.OCX 10-й версии).

Проблема в том, что если сначала поиграться с ComboBox, а потом с Calendar, то
фокус остается в календаре. Любое движение мышой или колесиком приводит к прокрутке окошек в календаре, а не в самом рабочем листе. Если поиграться с ActiveX-ами наоборот, то фокус отдается рабочему листу без проблем....

Есть ли какой-нить способ программно убивать фокус Calendar-я, не убивая сам календарь?
251
24 февраля 2010 года
SkyMаn
1.7K / / 31.07.2007
Цитата: Serzh
М.Жванецкий: Вы пробовали забросить комара?


Это с серии "забрасываем комара на Вижуал бейсике?"

В общем, штраф.

411
25 февраля 2010 года
Serzh
136 / / 09.07.2003
Цитата: SkyMаn
Это с серии "забрасываем комара на Вижуал бейсике?"

В общем, штраф.



Я полагаю, юмор, как и песня, "нам строить и жить помогают"...
И что сей штраф означает? Лишение столовой ложки на три дня??
По сути-то есть что сказать?

1
25 февраля 2010 года
kot_
7.3K / / 20.01.2000
Цитата: Serzh
Я полагаю, юмор, как и песня, "нам строить и жить помогают"...
И что сей штраф означает? Лишение столовой ложки на три дня??
По сути-то есть что сказать?


Юмор, как впрочем и песня должна быть к месту. Если вы считаете, что в вашем случае вы поступили действительно с юмором - то возможно вам стоит найти форум петросянов - вероятно вас там оценят.
По заданному вами вопросу - если вы используете ActivX-компоненты, а не компоненты формы - для получения фокуса попробуйте такой код:

 
Код:
ComboBox1.Activate = False

возможно вам понадобится предварительно получить доступ к контролу через свойства рабочего листа.
251
25 февраля 2010 года
SkyMаn
1.7K / / 31.07.2007
Цитата: Serzh

По сути-то есть что сказать?


Я все сказал, что хотел.

411
26 февраля 2010 года
Serzh
136 / / 09.07.2003
Цитата:
По заданному вами вопросу - если вы используете ActivX-компоненты, а не компоненты формы - для получения фокуса попробуйте такой код:
 
Код:
ComboBox1.Activate = False

возможно вам понадобится предварительно получить доступ к контролу через свойства рабочего листа.



Применил ActiveSheet.Calendar1.Activate = False
Вызывается панель настройки календаря, а потом (при закрытии панели) - отлуп в виде нет такого свойства / метода....
В обсчем - НЕ ТО!!

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог