powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Куда запропастился класс?
12 сообщений из 12, страница 1 из 1
Куда запропастился класс?
    #36507314
tansoc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создал с помощью конструктора новый класс myclass. В проекте библиотека классов появилась. Мануально новый объект этого класса на форму добавляется. А если программно создаю объект, вставляя в init формы:

objname='myclass'
Thisform.AddObject(objname,'myclass')

то пишет, что myclass не найден. Куда и что нужно добавить, чтоб этот myclass находился?
Или библиотеку где-то указать доболнительно нужно?


И еще. Если я возьму готовый текст создания этого myclass из view code, то куда этот программный текст нужно вставить, чтобы форма его находила? А то в init формы пытался вставить,Фокс говорит: "Низзя!"
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507318
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tansoc,

Почитать в хелпе про
Код: plaintext
1.
2.
set path
set classlib
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507333
tansoc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Благодарю. Теперь myclass нашелся. Заработало.

А по поводу вставки кода? Если я без библиотеки захочу обойтись и решу создать программно новый класс для формы, то куда описание нового класса впихнуть? В какой-то метод? Или придется только через дополнительный prg-шник делать?
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507474
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tansoc,

Можно и через prg-шник. Ну этот метод устаревает и исп-ся как правило для совместимости с более ранними версиями.
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507528
piva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AmKadtansoc,

Можно и через prg-шник. Ну этот метод устаревает и исп-ся как правило для совместимости с более ранними версиями.

Черт а я именно этим пользовался как наиболее гибчее чем VCX - хотя если вы не любите кошек - то видима вы их и не пробовали
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507614
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
piva,

Если честно, действительно не пробовал, ни кошек, ни классы через prg
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507701
tansocЕсли я без библиотеки захочу обойтись и решу создать программно новый класс для формы, то куда описание нового класса впихнуть? В какой-то метод? Или придется только через дополнительный prg-шник делать?Почитайте таки хелп. Описание классов ни в какие методы нельзя помещать.
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507707
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кошек попрошу не обижать, а вот классы определяемые через prg действительно удобная штука.
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507914
tansoc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня еще вопросик возник по классам.

1. Я определяю класс myclass на основе container
2. добавляю ему свойство myvalue.
3. В этот контейнер запихнул shape1, у которого в свойстве Curvature прописал

формулу iif(this.parent.myvalue=0,0,90) /либо квадрат, либо круг

4. Теперь создаю на форме объект myobject класса myclass

Thisform.AddObject('myobject','myclass')

5. Запускаю цикл

For i=1 To 10
With Thisform.myobject
.Visible=.T.
.Left=i*100
.myValue = iif(Mod(i/2,1)>0, 90, 0) && 1 вариант
* .shape1.curvature = Iif(Mod(i/2,1)>0,90,0) && 2 вариант
Endwith
F=Inkey(1)
Next


Как видно, этот myobject будет двигаться по форме. Он двигается, но изменения в форме Shape1 почему-то не происходят.
Если же я включу вариант № 2, то превращения из круга в квадрат происходят.


Мой "контейнерный" класс myclass будет содержать не только один Shape1. Со всеми "шейпами" должно происходить множество всяких мутаций, зависящих только от myValue.

Поэтому мне хотелось управлять этим оркестром лишь изменением свойства myValue, а не указывать в форме для каждого конкретного свойства "Shape"-ов, что им надлежит делать.

Т.е. мне хотелось бы узнать, какие нужны коррективы, чтобы работал вариант № 1.
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36507924
tansoc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PS

Для контроля в тот "контейнернейный"-класс я запихнул поле, у которого
ControlSourse = this.parent.myValue

В течение всего цикла высвечивается в поле светится только НОЛЬ.

Т.е. либо myVALUE неизменяется, либо изменения игнорируются вложениями типа Shape1 в контейнере.

Что-то я не так делаю или так и должно быть?
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36508120
GermanGM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tansoc, MyValue изменяется, даж не сумлевайтесь! :) Просто для объекта TextBox при изменении значения его ControlSource необходимо выполнять refresh
...
Рейтинг: 0 / 0
Куда запропастился класс?
    #36508594
tansoc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну, да. Вы правы. Действительно, изменяется.
Внутрь цикла я поставил "рефреш" на значение контрольного тектового поля. Идет чередование 0 и 90.

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


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