Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вопрос о создании невизуального класса / 3 сообщений из 3, страница 1 из 1
13.04.2004, 15:11
    #32479298
Muric
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос о создании невизуального класса
Добрый День!
Во многих формах есть один и тот же метод, который выполняется после ряда действий. Каким образом можно этот метод создать как класс, насколько я понимаю он будет невизуальным, или этот метод целесообразно сделать как функцию, процедуру?
...
Рейтинг: 0 / 0
13.04.2004, 15:30
    #32479350
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос о создании невизуального класса
Создай метод используя в качестве базового класса Custom. Для использования просто кидаешь экземпляр этого класса на форму.

Другой вариант - это создать класс формы и в нем сделать этот метод. А все свои формы создавать на базе этого класса формы.

Хотя, можно использовать и обычный процедурный файл.
...
Рейтинг: 0 / 0
13.04.2004, 15:55
    #32479418
Вопрос о создании невизуального класса
Надо чётко представлять себе, для чего нужны пользовательские классы. Возможны следующие случаи:

1. Необходимо модифицировать какой-либо из базовых классов VFP, расширив или изменив его функциональность. При этом исходим из того, что создаваемый класс многократно используется в приложении. Берём нужный базовый класс и создаём на его основе свой.

2. Необходимо создать новый контрол, включающий в себя несколько разных контролов из базовых и, возможно, пользовательских классов. Берём базовый класс Control и делаем из него то, что нужно.

3. Хочется сделать контейнер, содержащий разные контролы. Если Вы просто кидаете на форму Container и поверх него размещаете различные контролы, то и контейнер, и контролы существуют сами по себе. Создание нового контрола на базе класса Container позволяет использовать его как родительский (parent) для вкладываемых в него контролов.

4. Есть желание загружать форму не по команде DO FORM, а используя функцию CREATEOBJECT c последующим вызовом её метода Show - вперёд, создаём пользовательский класс формы на основе базового класса Form и включаем в него все нужные контролы.

5. Хочется сделать нечто оригинальное... Например, свой таймер. Берём класс Custom, но при этом помним, что класс этот не визуальный, и, следовательно, нужен только как объект, содержащий какие-либо свойства и методы.

6. Ну и наконец - создаётся новый COM-сервер (ActiveX фокс делать ещё не научился). Но это уже особая история, без создания пользовательского класса здесь никак не обойтись!

В Вашем случае никакого класса создавать не нужно. Выделите используемый всеми формами код и оформите его как процедуру или функцию в обычном процедурном файле. Кстати, и работать это будет намного быстрее.

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


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