Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / обращение к элементу наследника / 9 сообщений из 9, страница 1 из 1
17.06.2005, 13:05
    #33121677
Gosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
hi, All.
Задача: есть w_base, его аследник w_inherit, который содержит юзер объект со своими контролами, можно ли как-то обратиться из событий и функций к контролам юзер объкта??? PB 10.2.0 Build 8035. Сенкс
...
Рейтинг: 0 / 0
17.06.2005, 15:17
    #33122117
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
Можно
Код: plaintext
1.
2.
w_inherit w
w = this

Но так делать бессмысленно, т.к. от предка нельзя будет отнаследовать других наследников.

Надо перепроектировать классы для исключения такой необходимости.
Например, в предке объявить все требуемые в предке свойства, события и методы, а в наследнике их переопределить.
...
Рейтинг: 0 / 0
17.06.2005, 16:44
    #33122366
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
Anatoly MoskovskyМожно
Код: plaintext
1.
2.
w_inherit w
w = this

Но так делать бессмысленно, т.к. от предка нельзя будет отнаследовать других наследников.

Надо перепроектировать классы для исключения такой необходимости.
Например, в предке объявить все требуемые в предке свойства, события и методы, а в наследнике их переопределить.

НЕ бессмысленно, а НЕЛЬЗЯ так делать. Предок не должен ничего знать о наследниках...
...
Рейтинг: 0 / 0
17.06.2005, 16:50
    #33122385
Gosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
ок, решил проблему таким способом:
в ПАРЕНТЕ перебираю все контролы, если контрол User Object, то вызываю его событие TriggerEvent("my_event"). мне такое подходит, так как User Object в наследнике только один.
Вопрос в другом: такое решение тоже противоречит здравому смыслу и всему остальному?
...
Рейтинг: 0 / 0
17.06.2005, 17:03
    #33122417
ASCRUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
Goshaок, решил проблему таким способом:
в ПАРЕНТЕ перебираю все контролы, если контрол User Object, то вызываю его событие TriggerEvent("my_event"). мне такое подходит, так как User Object в наследнике только один.
Вопрос в другом: такое решение тоже противоречит здравому смыслу и всему остальному?
Я бы предложил на предке сделать просто пустые события ue_..., которые он вызывает тогда, когда считают нужным уведомить и потребовать действий от тех, кто его исплользует. Тогда любой наследник, просто вписав в код этих событий вызов нужных действий, в т.ч. методов с UserObject спокойно впишется в правильную схему работы. Перебирать же в списке элементов окна и искать UserObject не является правильным - может быть в один прекрасный момент Вам просто понадобиться наследоваться от окна предка без присутствия UserObject и что тогда - вешать "левый" UserObject только из за того, чтобы на него послали событие ?
...
Рейтинг: 0 / 0
17.06.2005, 17:08
    #33122428
Gosha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
Ок, ясно, спасибо за советы
...
Рейтинг: 0 / 0
17.06.2005, 18:07
    #33122563
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
ФилиппНЕ бессмысленно, а НЕЛЬЗЯ так делать.
"Нельзя" в смысле "невозможно" или "нельзя" в смысле "бессмысленно"?
:))
...
Рейтинг: 0 / 0
17.06.2005, 18:10
    #33122571
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
Anatoly Moskovsky ФилиппНЕ бессмысленно, а НЕЛЬЗЯ так делать.
"Нельзя" в смысле "невозможно" или "нельзя" в смысле "бессмысленно"?
:))
"Нельзя" в смысле "чревато" :)
...
Рейтинг: 0 / 0
17.06.2005, 19:24
    #33122705
ЗоринАндрей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обращение к элементу наследника
Не "чревато", а "не кошерно"
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / обращение к элементу наследника / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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