Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Немодальные формы / 17 сообщений из 17, страница 1 из 1
01.03.2008, 17:32
    #35165112
Андрей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Немодальные формы
Привет всем!
Работаю в FoxPro 9.0
Обнаружил, что немодальная форма не представлена объектом в среде FoxPro.
Как следствие - невозможно с ней работать из других форм, поскольку объект формы - отсутствует. Стоит сделать форму модальной, как её объект появляется.
В чём фишка?
...
Рейтинг: 0 / 0
01.03.2008, 17:59
    #35165138
Sergey Sizov.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Немодальные формы
Андрей КПривет всем!
Работаю в FoxPro 9.0
Обнаружил, что немодальная форма не представлена объектом в среде FoxPro.
Как следствие - невозможно с ней работать из других форм, поскольку объект формы - отсутствует. Стоит сделать форму модальной, как её объект появляется.
В чём фишка?
А теперь объясните и продемонстрируйте куском кода ваше открытие.
...
Рейтинг: 0 / 0
01.03.2008, 19:34
    #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
01.03.2008, 19:59
    #35165211
Fox 9.0
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Немодальные формы
Андрей КПривет всем!
Работаю в FoxPro 9.0
Обнаружил, что немодальная форма не представлена объектом в среде FoxPro.
Как следствие - невозможно с ней работать из других форм, поскольку объект формы - отсутствует. Стоит сделать форму модальной, как её объект появляется.
В чём фишка?

В чем фишка - ХЗ. Но описанная ситуация в VFP 9.0 - имеет место.
Кто не верит - попробуйте вызвать из другой формы немодальную форму и найти ее как объектную переменную в окне Locals Windows Debugger или обратиться к каким-либо свойствам этой формы через эту самую объектную переменную.
...
Рейтинг: 0 / 0
01.03.2008, 20:09
    #35165221
Sergey Sizov.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Немодальные формы
Ну так и где код, демонстрирующий проблему? Предлагаете просто верить на слово? Я так тоже могу много чего наговорить.
...
Рейтинг: 0 / 0
01.03.2008, 20:38
    #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
01.03.2008, 20:49
    #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
01.03.2008, 20:51
    #35165253
Sergey Sizov.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Немодальные формы
Fox 9.0 Sergey Sizov.Ну так и где код, демонстрирующий проблему? Предлагаете просто верить на слово? Я так тоже могу много чего наговорить.

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

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

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

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

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

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

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

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


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