powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Немодальные формы
17 сообщений из 17, страница 1 из 1
Немодальные формы
    #35165112
Андрей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем!
Работаю в FoxPro 9.0
Обнаружил, что немодальная форма не представлена объектом в среде FoxPro.
Как следствие - невозможно с ней работать из других форм, поскольку объект формы - отсутствует. Стоит сделать форму модальной, как её объект появляется.
В чём фишка?
...
Рейтинг: 0 / 0
Немодальные формы
    #35165138
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Андрей КПривет всем!
Работаю в FoxPro 9.0
Обнаружил, что немодальная форма не представлена объектом в среде FoxPro.
Как следствие - невозможно с ней работать из других форм, поскольку объект формы - отсутствует. Стоит сделать форму модальной, как её объект появляется.
В чём фишка?
А теперь объясните и продемонстрируйте куском кода ваше открытие.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165200
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей КПривет всем!
Работаю в FoxPro 9.0
Обнаружил, что немодальная форма не представлена объектом в среде FoxPro.
Как следствие - невозможно с ней работать из других форм, поскольку объект формы - отсутствует. Стоит сделать форму модальной, как её объект появляется.
В чём фишка?

Ну, это ты что-то где-то не доглядел или чего-то недопонял.

Код: plaintext
1.
2.
3.
4.
5.
public goMyForm

do form modalless name goMyForm linked
...
goMyForm.Hide
goMyForm.Show
...
Рейтинг: 0 / 0
Немодальные формы
    #35165211
Fox 9.0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Андрей КПривет всем!
Работаю в FoxPro 9.0
Обнаружил, что немодальная форма не представлена объектом в среде FoxPro.
Как следствие - невозможно с ней работать из других форм, поскольку объект формы - отсутствует. Стоит сделать форму модальной, как её объект появляется.
В чём фишка?

В чем фишка - ХЗ. Но описанная ситуация в VFP 9.0 - имеет место.
Кто не верит - попробуйте вызвать из другой формы немодальную форму и найти ее как объектную переменную в окне Locals Windows Debugger или обратиться к каким-либо свойствам этой формы через эту самую объектную переменную.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165221
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну так и где код, демонстрирующий проблему? Предлагаете просто верить на слово? Я так тоже могу много чего наговорить.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165241
Fox 9.0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Sizov.Ну так и где код, демонстрирующий проблему? Предлагаете просто верить на слово? Я так тоже могу много чего наговорить.

А какой еще нужен код ?

1. Создаете в дизайнере модальную форму. (Устанавливаете свойство WindowType = 1)
2. Создаете в дизайнере не модальную форму. (Устанавливаете свойство WindowType = 0)
3. На модальной форме располагаете кнопку, по которой будет вызываться не модальная форма.
4. Запускаете модальную форму.
5. Нажимаете на кнопку.
6. Открываете Debugger.
7. Нажимаете на кнопку Locals window.
8. Долго и безрезультатно ищете объектную переменную не модальной формы.
9. Закрываете все.
10. Во второй форме меняете свойство на WindowType = 1
11. Повторяете пп. 4-7.
12. Удивляетесь наличию объектной переменной уже и для второй формы (которая вначале была не модальная) в окне Locals window.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165248
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fox 9.0В чем фишка - ХЗ. Но описанная ситуация в VFP 9.0 - имеет место.
Проблема в руках :)
при вызове DO FORM MyForm создается переменная MyForm (ссылка на форму) одноименная с формой, но переменная локальная (может private) но никак не глобальная как ты ожидаешь. Поэтому после завершения кода процедуры вызвавшей DO FORM переменная убивается, а форма остается.
Если нужно - ссылку сохраняй куда-нибудь. Примерно так:
Код: plaintext
1.
do form myform
this.oChildForm = myform
...
Рейтинг: 0 / 0
Немодальные формы
    #35165253
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Fox 9.0 Sergey Sizov.Ну так и где код, демонстрирующий проблему? Предлагаете просто верить на слово? Я так тоже могу много чего наговорить.

А какой еще нужен код ?

Ну вот все, что описано, но в виде исходников. Я могу ведь насоздавать таких форм, с которыми еще не такие "неясности" могут быть.
Ну и еще вот тут почитай насчет модальных окон и их особенностей. А заодно предлагаю хорошенько подумать на логикой, которой должен следовать фокс при применном способе вызова.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165263
Fox 9.0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T
при вызове DO FORM MyForm создается переменная MyForm (ссылка на форму) одноименная с формой, но переменная локальная (может private) но никак не глобальная как ты ожидаешь. Поэтому после завершения кода процедуры вызвавшей DO FORM переменная убивается, а форма остается.

Можно ли считать данное утверждение верным как для формы у которой свойство - WindowType = 1 (модальной), так и WindowType = 0 (не модальной) или нет ?
...
Рейтинг: 0 / 0
Немодальные формы
    #35165269
Fox 9.0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Sizov.
Ну вот все, что описано, но в виде исходников. Я могу ведь насоздавать таких форм, с которыми еще не такие "неясности" могут быть.

Если есть под рукой VFP 9.0, то нужно всего лишь создать две простейшие формы, на одной из которых расположена кнопка и установить для них свойство модальности. Это должно занять не более 2-3 минут. Что здесь может считаться - "навороченным"?
...
Рейтинг: 0 / 0
Немодальные формы
    #35165271
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fox 9.0Можно ли считать данное утверждение верным как для формы у которой свойство - WindowType = 1 (модальной), так и WindowType = 0 (не модальной) или нет ?
Можно. Для модальной переменная не удалится пока форму не закроешь, т.к. процедура вызвавшая DO FORM остановится на этом месте до закрытия формы.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165272
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть еще коллекция _screen.forms для поиска нужной формы.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165280
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Fox 9.0 Sergey Sizov.
Ну вот все, что описано, но в виде исходников. Я могу ведь насоздавать таких форм, с которыми еще не такие "неясности" могут быть.

Если есть под рукой VFP 9.0, то нужно всего лишь создать две простейшие формы, на одной из которых расположена кнопка и установить для них свойство модальности. Это должно занять не более 2-3 минут. Что здесь может считаться - "навороченным"?
Тут возникает вопрос о единицах измерения простоты. Для меня форма и с двумя десятками контролов простая. Но у меня они работают. А вот у некоторых и с меньшим количеством не работают. Так может эти некоторые, наконец-то, догадаются показать свое неработающее творчество? Ведь оно не работает, а не мои формы? Тем более, что это вроде бы, правило хорошего тона - подтверждать свои вопросы и умозаключения именно кодом.
Догадки, если они нужны, выдвинул DimaT. Вполне правдоподобные и их можешь их проверить. Еще можно к гадалке сходить, может она чего подсажет.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165297
Fox 9.0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Sizov.
Тут возникает вопрос о единицах измерения простоты. Для меня форма и с двумя десятками контролов простая. Но у меня они работают. А вот у некоторых и с меньшим количеством не работают. Так может эти некоторые, наконец-то, догадаются показать свое неработающее творчество? Ведь оно не работает, а не мои формы? Тем более, что это вроде бы, правило хорошего тона - подтверждать свои вопросы и умозаключения именно кодом.
Догадки, если они нужны, выдвинул DimaT. Вполне правдоподобные и их можешь их проверить. Еще можно к гадалке сходить, может она чего подсажет.

Я вот здесь пошагово написал как смоделировать данную ситуацию. Что тебе там не понятно? Правда, если туго с пониманием сути вопроса (или нежеланием в него вникнуть), то не нужно и пытаться отвечать.

Ответ от Dima T меня вполне устроил.
...
Рейтинг: 0 / 0
Немодальные формы
    #35165301
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Fox 9.0Я вот здесь пошагово написал как смоделировать данную ситуацию. Что тебе там не понятно? Правда, если туго с пониманием сути вопроса (или нежеланием в него вникнуть), то не нужно и пытаться отвечать.

Ответ от Dima T меня вполне устроил.
Мне там все понятно. Но это будут мои, а не твои формы и совсем не факт, что они буду работать точно также как у тебя. Это трудно понять? И контролы на них будут не твои, а мои, ведущие себя совершенно по-другому. Это трудно понять? Если у тебя ломается какая-нибудь техника ты тоже ремонтнику объясняешь какие нажимать кнопки на его аппарате для воспроизведения такого же поведения как у тебя? Даже если у него нет точно такого аппарата? Или таки несешь сам поломавшийся аппарат? Это тоже трудно понять?
Короче, читайте правила форума, они рулез.
...
Рейтинг: 0 / 0
Немодальные формы
    #35166202
пример с использованием vcx-форм с подпиской на события
...
Рейтинг: 0 / 0
Немодальные формы
    #35166250
Андрей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за обсуждение.
Создал объект-приложение как видимый везде (Public).
Завёл в нем свойства для объектов-форм.
Все формы сделал немодальными, гружу их по команде
Do Form <имя формы> name <свойство объекта-формы>
Всё работает!
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Немодальные формы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]