![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 25.10.2009
Сообщений: 92
|
![]()
Часто возникает такая проблема: работаю одновременно с несколькими документами, у которых один шаблон. В этом шаблоне есть макрос, вызывающий форму. Когда я переключаюсь между документами и вызываю макрос, то фокус переходит на предыдущий документ, из которого был вызван макрос и действия выполняются там. А мне нужно, разумеется, чтобы в текущем документе всё выполнялось.
Форма объявлена в пространстве шаблона. Форму вызываю примерно так: Код:
Код:
|
![]() |
![]() |
![]() |
#2 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
Нужно показать форму не модально, как например окно поиска и замены:
Код:
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 25.10.2009
Сообщений: 92
|
![]()
Нет, мне не совсем это нужно. Мне нужно, чтобы форма была модальной, но чтоб она открывалась в активном документе, а не том, где была открыта в предыдущий раз.
|
![]() |
![]() |
![]() |
#4 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
Как ведёт себя форма? Она открывается для предыдущего активного документа или для того документа из которого была вызвана в первый раз? У меня подобный трюк повторить не получается: активным остаётся документ, который и был активным до вызова формы
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 25.10.2009
Сообщений: 92
|
![]()
Итак, что делаю:
1. Открываю документ1, выполняю макрос, в котором вызывается форма Form1.Show 2. В форме в событии Form_Activate заполняется список, находящийся на форме, полями автотекста, содержащимися в шаблоне. 3. Выбираю в списке элемент, нажимаю на форме кнопку, в которой в конце есть вызов Unload Me 4. Элемент автотекста вставляется в документ1 5. Перехожу к документу2 - делаю его активным, вызываю тот же макрос Результат: Активным становится документ1, форма открывается в нем, далее после выбора в списке текст вставляется в него Ожидаемый результат: Активным остается документ2, форма открывается в нем, в него же вставляется текст Проблема решается, только если закрыть документ1 Последний раз редактировалось cw_o; 26.11.2012 в 09:40. |
![]() |
![]() |
![]() |
#6 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
Дьявол кроется в деталях. Сдаётся мне, что причина в процедуре активации формы. Почему заполнять поля формы нужно при активации, а не при открытии?
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 25.10.2009
Сообщений: 92
|
![]()
Перенесла заполнение списка в Form_Initialize(). Результат тот же. Может, каким-то искусственным методом заставить его оставлять активным нужный документ?
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с документами Ворда на веб странице | Ципихович Эндрю | Microsoft Office Word | 15 | 16.09.2012 11:31 |
Работа с документами в php | manula | PHP | 3 | 04.09.2012 12:36 |
Работа с документами на сайте | SashaS | HTML и CSS | 3 | 17.03.2012 13:35 |
Работа с несколькими документами одновременно | Busine2009 | Microsoft Office Word | 12 | 04.06.2009 19:53 |