powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Объектная модель программы
8 сообщений из 108, страница 5 из 5
Объектная модель программы
    #35126431
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прошелмимо2CTAC-KO

обрати внимание на пример.
посмотри как нарисована форма.
много отличий от дизайнера форм??
(отличие - ты имеешь "рафинированный" класс)

и затем ты работаешь только с классами
(обрати внимание на закон Логики, утверждающий,
что опр-и необходимо производить с предметами, имеющими одно основание)
(имеется ряд преим-в, и я пока умолчу, мы пока учимся разрабатывать классы)

http://www.sql.ru/forum/actualfile.aspx?id=5265404
ну давай разбирать чтоли?
создаем myCAD.
Код: plaintext
oCad  =  createobject('myCAD')
в классе myCAD прописаны поля, алиас, таблица и тп, но SelectCmd - пустой, поэтому как я понимаю никакой выборки в курсор не случается. Но зато открываеццо сурсная table1, которая "тянеццо с серва".
тогда создаем форму myform
Код: plaintext
1.
	oForm =  createobject('myForm',oCad)
	oForm.show()
на ините прописываеццо SelectCmd у oCad через Assign
Код: plaintext
1.
lparameters toCAD
toCAD.cWhere = '&?pcWhere'
затем выполняеццо выборка в курсор
Код: plaintext
if toCAD.cursorfill()
который ложиццо в грид
ну а потом если нужно другое условие то там подменяеццо условие сWhere макроподставой и перевыборка в курсор thisform.oCad.CursorRefresh().

от дизайнера форм отличий нет. только все создаваемые формы лягут в классы, а не в доки, но в том же кол-ве.
...
Рейтинг: 0 / 0
Объектная модель программы
    #35126503
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Если идти дальше, то и другие части можно аггрегировать, грубо говоря,
>оставляя "шасси" и навешивая опции, это к слову о "седанах" и
>"универсалах". ... Возможно они is-a "кузов". Но это, возможно, не более
>чем единый интерфейс для аггрегации их в "шасси".

Согласен с агрегацией, но я имел в виду, что класс "авто" описывает Именно
авто в СБОРЕ.
У него есть свойства - движок, шасси, кузов и т.д., являющиеся объектами
ссответсвующих классов со своими свойствами и методами.


Согласен, что седан и универсал - это, скорее разные ветки наследования от
класса авто, но учитывая, что седаны появились несколько раньше универсалов
(и с конвеера они сходят как правило раньше универсалов), можно
предположить, что все таки меняют класс АВТОСЕДАН на наследованный от него
АВТОУНИВЕРСАЛ, с переопределенным свойством "КУЗОВ", который вполне может
быть объектом соответствующего класса КУЗОВУНИВЕРСАЛ, наследованный от
класса КУЗОВ или (даже скорее всего, потому что инженеры не разрабатывают
новый кузов "универсал", а переделывают из кузова "седан", который опробован
на стендах и прошел краш-тест) от класса КУЗОВСЕДАН.

Что - то мы с тобой в регилиги вдарились :)


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Объектная модель программы
    #35126698
Фотография fixxer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galyamov Rinat
можно предположить, что все таки меняют класс АВТОСЕДАН на наследованный от него
АВТОУНИВЕРСАЛ, с переопределенным свойством "КУЗОВ",

Единсвенное не понятно, зачем чтобы переопределить свойство рожать наследника?
...
Рейтинг: 0 / 0
Объектная модель программы
    #35126978
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> можно предположить, что все таки меняют класс АВТОСЕДАН на
> наследованный от него
> АВТОУНИВЕРСАЛ, с переопределенным свойством "КУЗОВ",
>
>
> Единсвенное не понятно, зачем чтобы переопределить свойство рожать
> наследника?

Чтобы оставить возможность создавать создавать объекты обоих классов.

Или я не так понял вопрос?


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Объектная модель программы
    #35132383
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
такой вопрос - решил создать класс - кнопку btnApply с методом Validation, в который вписываю проверку заполненности необходимых полей на форме, т.е. разрешать отрабатывать Click кнопы или нет. Из метода возращаюсь по Return .T./.F.. Затем в методе Click кнопы ставлю
Код: plaintext
1.
2.
3.
4.
5.
if !this.Validated()
messagebox('зполнены не все поля')
return .F.
endif
... код
Ну я тут подумал - че я каждый раз пишу одно и то же в этом методе, т.е. указанные 4 строки? Ну взял я их и в класс поместил, а тогда сделал так
Код: plaintext
1.
2.
DODEFAULT()
... код
но сие не работает! Я конечно догадываюсь, что return .F. не вернет меня из метода Click кнопы, как если б это не был наследованный код, а текущий, и последующий код в таком разе отработает, но метод Validation даже не отрабатывает при этом. Собственно вопрос - если так делать, то отрабатывается чтоли только классовый, т.е. наследованный Validation? А текущий мимо зарплаты?
...
Рейтинг: 0 / 0
Объектная модель программы
    #35132671
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имя класса::Validation()
С уважением, Алексей
...
Рейтинг: 0 / 0
Объектная модель программы
    #35132796
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CTAC-KO... Собственно вопрос - если так делать, то отрабатывается чтоли только классовый, т.е. наследованный Validation? А текущий мимо зарплаты?
Так наверно:
Код: plaintext
1.
2.
3.
if !dodefault()
    return .F.
endif
...
...
Рейтинг: 0 / 0
Объектная модель программы
    #35133604
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо.

короче я какбы изначально неправильно удумал. Надо ту процедурку в метод клика, с небольшой добавкой. А сам код клика выносить в отдельный метод, я назвал ClickCode
Код: plaintext
1.
2.
IF this.Validated()
   this.ClickCode
ENDIF
...
Рейтинг: 0 / 0
8 сообщений из 108, страница 5 из 5
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Объектная модель программы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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