powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / HELP!!!! Unknow member Commandxxx
17 сообщений из 17, страница 1 из 1
HELP!!!! Unknow member Commandxxx
    #37408388
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Народ, сегодня столкнулся с проблемой, с которой раньше никогла не сталкивался.
Создал форму, накидал на нее контролы (кнопки, комбобоксы, разные элементы), присвоил им разные методы и прочее,
Выставил форму как AS-TOP-LEVEL-Form , и теперь в методе resize обращаясь к кнопкам, обьектам и прочим конролам фокс ругается что незнакомый обьект. Хотя на форме есть кнопки которые он видет и не ругается, а на свеже вставленные идет ругань.
Пересмотрел структцры таблицы этой формы, ничего поозрительного не нашел. Раньше очень часто делал приложения ввиде отдельных форм, такого никогда небыло. Кто подскажет, что случилось? Может фокс пересетапить? VFP6+SP5...
Всем спасибо.
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37408408
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valerii,
PageFrame есть?
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37408433
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNG,

Когда-то пару контролов были на pageframe
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37408434
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNG,

Я дергаю из большого проекта небольшой его кусочек.. Но я переделал все с нуля, и подложил только тексты в методы и свойства..
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37408491
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valerii,

Проверь местоположение ненаходимых контролов и ссылки на них в коде. Может, кидал на PageFrame, а он оказался на форме.
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37409142
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNG,

Все это проверил, все лежат на Form1 в поле Parent
....
Поборол это по-другому. Обявил переменную названием формы как public, стало видеть...
Но суть проблемы так и не понятна. Также срабатывает когда Datasession = 2 и буферизация оптимистическая.
В простом варианте - нет.
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37409453
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приведите команду обращения к объекту на которой возникает ошибка и текст сообщения об ошибке. Не свой перевод, а именно сам текст.
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37411645
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

Resize Method

WITH This
.combo1.Top = .Height - 32
.combo2.Top = .Height - 32
.Command1.TOP = .Height - 87
.Command2.TOP = .Height - 87
.Command3.TOP = .Height - 87
..
.Command11.TOP = .Height - 33
ENDWITH
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37411711
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А текст сообщения об ошибке какой? Кроме того, это чей метод Resize? Какого объекта? Ругань идет в момент открытия формы или уже в процессе работы?

PS: Надеюсь, у Вас в методах init нет команд вроде Grid.SetFocus()? Подобная команда в событии init "ломает" станадартный порядок выполнения методов и событий. Последствия - не предсказуемые.
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37411712
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valerii,

А если вместо This написать все же THISFORM результат будет тот же?
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37413355
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNG,

Да, это ничего не меняет. Если поменять тип формы из AsTopLevel Form тогда проблем нет
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37413361
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,
Unknow member Commandxxxю Ругань идет в момент открытия формы. В методе инит формы - инициализация пользовательских свойств формы.
Присвоение значений переменным...
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37414119
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriiВладимирМ,
Unknow member Commandxxxю Ругань идет в момент открытия формы. В методе инит формы - инициализация пользовательских свойств формы.
Присвоение значений переменным...
Где-то Вы нарушили последовательность создания объектов. В init-формы все вложенные в нее объекты должны быть уже созданы. Если идет сообщение о том, что объекта еще нет, то где-то, как-то, но Вы запустили метод resize (кстати, Вы так и не сказали ЧЕЙ это метод? Какого объекта? Формы или каких-то вложенных контейнеров) ДО создания вложенных объектов. Возможно, Вы явно запустили собственно метод Form.Init()

1. К какому объекту относится метод Resize() о котором идет речь
2. Есть ли в каких-либо объектах явный вызов методов SetFocus(), Init()
3. Речь идет о форме или FormSet
4. Форма создана как файл SCX? На основе базового класса Form или на основе собственного класса VCX?

Можете выложить сюда проблемную форму?
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37415572
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

Валадими, спасибо за внимание к этой проблеме. Resize() это метод формы. Форма создана на основе базового класса Form. Форма не является членом FormSet-a. У меня уже есть определенный опыт в VFP, поэтому я и в недоумении..
Самое печальное что на этой же форме сть контролы Command - на них не ругается метод Resize , стоит добавить кнопку и "подвигать" ее в Resize() - во тут и начинаеются проблемы.
Скажу сразу, я создал новую форму, а элементы управления выдернул из одного моего проекта с PageFrame-ом. Как бы выдернул из многого только одну функциональность. соостветствено чать кнопок поубирал, часть оставил, потом дабаил пару новых - и вот такой вот результат.
Грешил на PageFrame, откравыл SCX как таблицу -просматривал каждеое поле, связанное выдаваемыми ошибками, ничего особенного, паренты обьектов - Форма...
Поборол ситуацию только объявив вформу Public...
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37415595
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, НЕЛЬЗЯ, просто нельзя, объявлять переменную как PUBLIC без очень веских на то причин. Грубо говоря, Вы лечите насморк при помощи гильотины. Насморк-то Вы вылечите, только дальнейшее существование будет проблематичным... Переменные PUBLIC - это потенциальные проблемы. Их должно быть как можно меньше и все они должны жестко контролироваться специальным кодом. Решать локальные проблемы при помощи глобальных пееменных - создавать себе проблемы в будущем.

Попробуйте "тупо" создать форму заново. Возможно, какие-то следы остались в самой форме.
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37416339
Valerii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

Согласен на все 100% с Вашими утверждениями. До того как объявить паблик форму, я ее с нуля всю переделал, накидал нужных кнопок и свойств, подложил код кнопкам и методам на форме, и как только сделал форму AS-Top-Level - все по-новой.
После этого тупо сделал паблик форму скомпилил код, но так и не успокоился.
...
Рейтинг: 0 / 0
HELP!!!! Unknow member Commandxxx
    #37416634
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотрите стек событий.

Включите в отладчике логирование всех событий (кроме мышиных) и посмотрите, когда у Вас срабатывает Resize(). Какое событие или метод заставляют его сработать до событий инициализации объектов.

PS: Давно бы положили сюда во вложение тестовую формочку с проблемой. "На слух" сложно понять в чем причина.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / HELP!!!! Unknow member Commandxxx
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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