powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / return для балбеса...
7 сообщений из 7, страница 1 из 1
return для балбеса...
    #32660553
Подскажите балбесу как return вернуть две и более переменных?
...
Рейтинг: 0 / 0
return для балбеса...
    #32660616
Por
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Por
Гость
Миша КузнецовПодскажите балбесу как return вернуть две и более переменных?

1. вернуть массив.
2. вернуть объект.
3. передать в функцию параметры по ссылке.
...
Рейтинг: 0 / 0
return для балбеса...
    #32660657
1. вернуть массив.
2. вернуть объект.
3. передать в функцию параметры по ссылке.[/quot]


Все это интересно, особенно последних 2 пункта,

вернуть обьект - это как?

а параметры по ссылке, в смысле, как можно в фоксе ссылки делать?
...
Рейтинг: 0 / 0
return для балбеса...
    #32660695
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А HELP почитать?

Вернуть объект - ты в курсе, что переменная может содержать ссылку на объект?

Как в FoxPro делать ссылки? Это несколько не то, что ты тебе кажется. Почитай HELP по настройке

SET UDFPARMS

Там есть примеры. Все достаточно просто.

И еще, все зависит от того, откуда ты собрался возвращать значения. Т.е. где даешь команду RETURN. В методе объекта (формы) или в функции (процедуре)
...
Рейтинг: 0 / 0
return для балбеса...
    #32660724
ВладимирМА HELP почитать?

Вернуть объект - ты в курсе, что переменная может содержать ссылку на объект?

Как в FoxPro делать ссылки? Это несколько не то, что ты тебе кажется. Почитай HELP по настройке

SET UDFPARMS

Там есть примеры. Все достаточно просто.

И еще, все зависит от того, откуда ты собрался возвращать значения. Т.е. где даешь команду RETURN. В методе объекта (формы) или в функции (процедуре)

из формы хочу вернуть несколько переменных, использую метод unload event
...
Рейтинг: 0 / 0
return для балбеса...
    #32660746
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Я так понимаю, что форма у тебя модальная. Тогда изнутри любого метода формы будут видны все переменные типа PRIVATE объявленные в том же методе, где и была вызвана форма.

PRIVATE var1, var2, var3, ...
DO FORM MyModalForm.scx

И в любом методе формы можешь смело обращаться

m.var1=1
m.var2='test'

2) Можно не удалять форму при закрытии, а просто делать ее невидимой, используя метод HIDE(). В этом случае выполнение программы продолжится с места где была создана форма. Но поскольку форма все еще находится в памяти, то можно будет обращаться к ее методам и свойствам:

DO FORM MyModalForm.scx
* Закрытие формы осуществляется как ThisForm.Hide()
IF TYPE("MyModalForm.name")="C"
* Т.е. форма еще не удалена
m.var1 = MyModalForm.prop1
m.var2 = MyModalForm.prop2
MyModalForm.Release()
ENDIF

3) Создаешь глобальные переменные или один глобальный объект с кучей пропертей которые и заполняются в форме.

4) Если вызов формы происходит из другой формы и стоит задача заполнить свойства родительской формы, то можно просто напрямую их заполнять

5) Можно конструировать очень длинную символьную строку, где все нужные значения идет через какой-нибудь разделитель. В FoxPro предельная доина символьной переменной около 16МБ
...
Рейтинг: 0 / 0
return для балбеса...
    #32660773
ВладимирМ1) Я так понимаю, что форма у тебя модальная. Тогда изнутри любого метода формы будут видны все переменные типа PRIVATE объявленные в том же методе, где и была вызвана форма.

PRIVATE var1, var2, var3, ...
DO FORM MyModalForm.scx

И в любом методе формы можешь смело обращаться

m.var1=1
m.var2='test'

2) Можно не удалять форму при закрытии, а просто делать ее невидимой, используя метод HIDE(). В этом случае выполнение программы продолжится с места где была создана форма. Но поскольку форма все еще находится в памяти, то можно будет обращаться к ее методам и свойствам:

DO FORM MyModalForm.scx
* Закрытие формы осуществляется как ThisForm.Hide()
IF TYPE("MyModalForm.name")="C"
* Т.е. форма еще не удалена
m.var1 = MyModalForm.prop1
m.var2 = MyModalForm.prop2
MyModalForm.Release()
ENDIF

3) Создаешь глобальные переменные или один глобальный объект с кучей пропертей которые и заполняются в форме.

4) Если вызов формы происходит из другой формы и стоит задача заполнить свойства родительской формы, то можно просто напрямую их заполнять

5) Можно конструировать очень длинную символьную строку, где все нужные значения идет через какой-нибудь разделитель. В FoxPro предельная доина символьной переменной около 16МБ

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


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