powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Формы
9 сообщений из 9, страница 1 из 1
Формы
    #33563563
chukcha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FoxPro 7

Я хочу переходить из формы в форму при этом закрывая предыдущею и открываю следующую. Пару раз так получается, а потом выдает ошибку (т.е. не может найти форму).

К примеру:
Код: plaintext
1.
form1.release()
form do form2.scx     

Во второй строчке я указывал даже путь полностью к форме form2, и все равно не работает
...
Рейтинг: 0 / 0
Формы
    #33563579
Crispy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А где ты размещаешь все это?
Вообще лучше наверно уж не так. Можно в главном модуле main.prg просто написать:
Код: plaintext
1.
2.
3.
4.
5.
DO FORM form1
DO FORM form2
...
DO FORM form10
READ EVENTS
Естественно - все формы модальные. И кроме того, что у тебя такое "Form2"?
Просто свойство формы - Name и имя файла на диске по умолчанию не всегда совпадают. Может быть десять файлов форм, и все с именами "Form1" к примеру. :)
...
Рейтинг: 0 / 0
Формы
    #33563589
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К сведению:

Форма не может быть уничтожена, пока выполняется какой-либо ее метод.

Если приведенный код выполняется в методе формы, то по команде ThisForm.Release() форма полностью не уничтожается. Остается "висеть" в памяти до тех пор, пока метод, в котором дана эта команда не будет завершен.

Если команда DO FORM вызывает модальную форму, то это означает, что исходная форма будет существовать до тех пор, пока не закроется (или не станет невидимой) вызванная модальная форма.
...
Рейтинг: 0 / 0
Формы
    #33564108
chukcha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
form1.release()
form do form2.scx 

Этот код я пишу на обычной кнопке, которая осуществляет переход на другую форму и при этом закрывает предыдущею.
Странно то, что иногда получается так последовательно открыть 3-и а то и 4-е формы, а иногда и 2-ую форму неоткрывает (выдает ошибку).

Приведу пример:
Школьный журнал

На первой форме нужно ввести предмет, и если хочешь перейти к вводу названия класса (уже на другой форме), а если нет то выйти. Так же и дальше ввел класс, можешь выйти, а можешь ввести учеников (уже на 3-ей форме) и т.д.
...
Рейтинг: 0 / 0
Формы
    #33564123
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это аналог Wizard-а?

Так это организуется по другому. На форму кладется PageFrame с установленным значением Tabs=.F., т.е. сами закладки не отображаются. Ну и кнопки "Вперед", "Назад". Нажатие на кнопки просто активизирует очередную страницу PageFrame.
...
Рейтинг: 0 / 0
Формы
    #33566779
chukcha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо!!!
...
Рейтинг: 0 / 0
Формы
    #33578510
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi chukcha!

Читать про области видимости переменных, и про переменные-ссылки которые
неявно создаёт команда DO FORM.
Кратко говоря - писать Form1.release() в общем случае нельзя - т.к. нету
никакой гарантии что форма form1.scx будет исеть переменную-ссылку с именем
form1.

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Формы
    #33580553
chukcha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да я понял, что это была ошибка

-"Кратко говоря - писать Form1.release() в общем случае нельзя "

Написал просто _screen.activeform.refresh()

Ну все равно, спасиба!

С уважением chukcha
...
Рейтинг: 0 / 0
Формы
    #33583263
chukcha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин ошибся

НЕ _screen.activeform.refresh()

А _screen.activeform.release()
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Формы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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