|
|
|
| Есть ленточная форма с краткими данными на клиента. При щелчке на какой-либо записи открывается полная анкета этого клиента- доволькно сложная форма с подформами, картинками и т.д. Обе формы базируются нна одном и том запросе. Вопрос в том, что вторая форма открывается на первой записи рекордсета а затем переходит к требуемой, фактически форма перерисовывается дважды, а поскольку она сложная, то получается неприятное мерцание. Можно как-то убрать прорисовку формы при открытии, оставить только прорисовку на текущей записи? Сразу поставить фильтр на эту запись - нельзя, так как меня интересуют и соседние записи тоже | |
|
| |
|
|
|
| 1 вар. Открыть таки форму с фильтром. Добавить свои кнопки Назад/Вперед для изменения фильтра?
2 вар. Форма без источника. На событии Form_Open присваивать форме источник - запрос, возвращающий одну запись (и подчиненным наверное тоже надо присваивать источники здесь же). Кнопки Назад/Вперед, изменяющие источники? (С подчиненными не пробовал) | |
|
| |
|
|
|
| Как вариант
открыть форму в невидимом режиме....
пнуть на нужную запись...
отобразить форму | |
|
| |
|
|
|
| 3. вар. Попробовать разбить форму на вкладки. На первую вкладку что-нибудь легкое (Типа название), на остальные подчиненные формы, рисунки и. др. тяжести (типа комбобоксов). | |
|
| |
|
|
|
| Лично я со своими убогими знаниями обхожусь следующим образом. На первую форму поставь кнопку - открытие формы по критерию. Мастер сам все спросит и подскажет. Затем полученный код копирую и ставлю на двойной щелчек како-либо ячейки первой формы, а кнопку убираю, вместе с кодом, что бы не засоряла. Работает без замечаний в любой сложности формы. | |
|
| |
|
|
|
| Вариант Snipe интересен, я пытался так сделать, но получаю сообщение, что docmd.goto неыозможен в режиме конструктора. Видимо то, что форма скрвта, воспринимается как режим конструктора | |
|
| |
|
|
|
| Прошу прощения- появляется такое сообщение "Невозможен переход к увазанной записи!"
Кусок кода таков
DoCmd.OpenForm frmDetails, , , Pub(13), , acHidden
DoCmd.GoToRecord , , acGoTo, pubrec
Forms!frmDetails.Visible = True
В этот момент и ругается. Запись заведомо существует, если убрать acHidden, то все работает, но дребезжит | |
|
| |
|
|
|
| DoCmd.OpenForm "форма2", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "форма2", acGoTo, Me.CurrentRecord
Forms!форма2.Visible = True | |
|
| |
|
|
|
| Спасибо Snipe, помогло. Так в чем тут фишка была? В параметре acForm ы строке
DoCmd.GoToRecord acForm, "форма2", acGoTo, Me.CurrentRecord ? | |
|
| |
|
|
|
| DoCmd.OpenForm "форма2", acNormal, "", "", , acHidden
acNormal - по моему тут, если этого параметра нет - то форма открывается в режиме конструктора | |
|
| |