Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
Папку с законченным проектом и всеми файлами скопировал в другую папку. Открыл из новой папки проект, на запрос Фокса о новом месте расположения файлов проекта ответил утвердительно. Переделал некоторые процедуры некасающиеся сути вопроса. Скомпилировал и запустил exe-шник и пошло-поехало. А проблема в том, что в программе открываю первое окно (WindowType = 0): *... Do Form F_1 *.... * затем второе (WindowType = 1) *.... Do Form F_2 *.... * в форме F_2 даю команду типа * F_1.Command1.Enabled = .F. * Пробовал и так: If WEXIST('F_1') and WVISIBLE('F_1') F_1.Command1.Enabled = .F. EndIf Выскакивает ошибка 1923 "Object F_1 is not found." Хотя в первом проекте все нормально работает. В чем может быть проблема? Думал в файлах .scx(.sct) дефекты. Создал с нуля F_1 и F_2 - тоже самое!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 08:41 |
|
||
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
Видимо область видимости переменной или есть поля таблиц с такими же именами F_1.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 09:22 |
|
||
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
pivaВидимо область видимости переменной Конечно. Надо: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 09:35 |
|
||
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
Тут у тебя var_F_1 А там F_1.Command1.Enabled = .F. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 11:07 |
|
||
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
Этот вариант прошел: PUBLIC var_F_1 Do Form F_1 NAME var_F_1 LINKED Но жалко память тратить!! И все-таки кажется глюк в файлах формы. Сделал новый проект с двумя формами как описано выше - все прекрасно работает без Do Form F_1 NAME var_F_1 LINKED А причина ? Спасибо за ответы! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 13:50 |
|
||
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
Ну, так ты где-то переопределил переменную F_1 и она перестала быть объектом. Отсюда и глюки. Код: plaintext 1. 2. 3. Т.е. сама переменная есть, но после переопределния это уже НЕ объект. Вообще-то, так с формами никто не работает. Особенно недопустимо использовать указанный синтаксис с PUBLIC-переменными. Верный путь к большим проблемам. Надо либо явно передавать в подчиненную форму ссылку на главную, либо вести собственную коллекцию активных форм, либо сканировать системную коллекцию _SCREEN.Forms() или _VFP.Forms(). Один из вариантов работы с формами посмотри здесь http://www.foxclub.ru/kb/index.php?sid=75423&aktion=artikel&rubrik=004&id=4&lang=ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2005, 14:14 |
|
||
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
Тщательно проверил весь код. Нигде определения, а тем более переопределения переменной F_1 нет. Тогда просто понаставил в разных местах Save To ....mem. После анализа всех файлов .mem только в самом последнем *... *закрываем все (в том числе все окна) Save To P_end.mem Quit Вылазит F_1 L .NULL. Это ли не глюк. По этому поводу вспоминается один глюк (еще в FPD 2.6, а в последствии и в VFP 3.0, в более старших версиях еще не проверял), когда ни с того ни сего часть команд в режиме трассировки выполняется нормально, а без трассировки не выполняется, например в процедурном файле (несколько тысяч строк кода) имеем процедуру 1 Procedure ... 2 Select 1 3 Index On ... 4 Select 2 5 Index On ... 6 Select 3 7 Index On ... 8 Select 1 9 Set Relation ... .... В режиме трассировки - все Ок! Без трассировки не выполняется, например, строки с 5 по 7 Что делать? Просто поставил Wait "" Window Timeout 0.1 1 Procedure ... 2 Select 1 3 Index On ... 4 Wait "" Window Timeout 0.1 5 Select 2 6 Index On ... 7 Wait "" Window Timeout 0.1 8 Select 3 9 Index On ... 10 Wait "" Window Timeout 0.1 11 Select 1 12 Set Relation ... .... И во всех режимах - Ок! Это ли не глюк!! Если проблема решается, а я думаю, всегда можно найти решение, - и слава Богу! Некогда распыляться на всякую ерунду. Спасибо за ответы! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2005, 07:27 |
|
||
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
RaufMЕсли проблема решается, а я думаю, всегда можно найти решение, - и слава Богу! Некогда распыляться на всякую ерунду. Да пожалуйста! Только если ты решишь использовать PUBLIC переменные "не распыляясь на разную ерунду" потом не приставай с вопросами типа "а почему это у меня форма F_1 неожиданно пропадает?" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2005, 11:54 |
|
||
|
Ошибка 1923
|
|||
|---|---|---|---|
|
#18+
Hi RaufM! DO FORM ... если НЕ указывать опции NAME имя_переменной - АВТОМАТОМ создаст Private переменную по имени scx файла, и поместит в неё ссылку на эту самую форму. Так что ЯВНОЕ указание области видимости переменной никак нельзя назвать "замусориванием". А вообще слушай Владимира и НЕ используй эти неявные переменные-ссылки. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2005, 03:34 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33023081&tid=1594369]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
56ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 244ms |
| total: | 402ms |

| 0 / 0 |
