powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Как запустить событие itemchanged в DW из другого места?
6 сообщений из 6, страница 1 из 1
Как запустить событие itemchanged в DW из другого места?
    #32701955
Bobik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Типа,

dw_1.Event itemchanged()

или

dwobject dwo
dw_1.Event itemchanged(1, dwo, ' ')

не работает.
...
Рейтинг: 0 / 0
Как запустить событие itemchanged в DW из другого места?
    #32702249
Фотография PL99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BobikТипа,

dw_1.Event itemchanged()

или

dwobject dwo
dw_1.Event itemchanged(1, dwo, ' ')

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

А вот второй работает, во всяком случае, в приведенном обрывке кода я не вижу причин, по которым бы он не работал.
Как вы определяете dwo?
В событии itemchanged вы проверяете, существуют ли row=1, валиден ли переданный dwо и возможно ли преобразовать третий аргумент в тот тип данных, который соответсвует второму аргументу?
...
Рейтинг: 0 / 0
Как запустить событие itemchanged в DW из другого места?
    #32702504
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Традиционный для этого форума вопрос: какова цель этого упражнения?
Что мешает сделать свое отдельное событие и вызывать его как из itemchanged, так и еще где-то, где нужна аналогичная обработка.

ИМХО, Itemchanged должен вызываться только PB.
Вы реагируете на некое событие.
Если кто-то вызывает itemchanged под предлогом того что "мне надо сделать то же самое так оно ведь там уже написано" - сам себе враг.

я предпочитаю быть уверенным, что если выполняется clicked, то это значит что кто-то нажал кнопку на мыше, а не вызвал это событие "откуда-то".
Это касается всех стандартных событий.

dwo сформировать можно, это-то как раз просто. Об этом было здесь -> Возможно ли получить ссылку на DWObject по его номеру?
но я даже не хотел поначалу ссылку давать, чтоб не провоцировать ;-)
...
Рейтинг: 0 / 0
Как запустить событие itemchanged в DW из другого места?
    #32702573
Bobik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я уже сделал отдельный event, но на мой взгляд лучше вызывать само событие.
P.S. Как же все-таки вызвать это событие?
...
Рейтинг: 0 / 0
Как запустить событие itemchanged в DW из другого места?
    #32702645
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор но на мой взгляд лучше вызывать само событие
Почему? Аргументы есть?

Я представляю себе как кто-то потом пытается сделать в этом событии "Return 1" и удивляется почему не срабатывает itemerror.

авторP.S. Как же все-таки вызвать это событие?
По ссылке ходили? Прочитали? Что конкретно не понятно?
Код: plaintext
1.
2.
DWObject dwo
dwo = dw_1.object.get_attribute( "a",True) 
dw_1.Event itemchanged( 1 , dwo, ' ')
Почему так делать не стОит написано там же.
...
Рейтинг: 0 / 0
Как запустить событие itemchanged в DW из другого места?
    #32702732
alexis glinski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
soglasen s ЗоринАндрей , vyzyvat' nuzhno iz ItemChanged , a peredavat' DWObject mozhno escho vot kak:
Код: plaintext
1.
 /*dw_1.object.get_attribute( "a", True)*/ 
ll_Rtn = dw_1.Event ItemChanged(  1 , dw_1.Object.a, 'value' )
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Как запустить событие itemchanged в DW из другого места?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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