powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / dddw
18 сообщений из 18, страница 1 из 1
dddw
    #39761617
sboyko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всех с Новым Годом!
есть win7/64, PB10.5
проблема
в событии для DW-dropdown делаю фильтр для поля с DDDW.
обычно пользователь делает выбор и в itemchanged я сбрасываю фильтр DDDW.
а пользователь не захотел что то выбирать и где мне сбросить фильтр? ведь ITEMCHANGED не вызывается...
...
Рейтинг: 0 / 0
dddw
    #39761684
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sboyko,

pbm_dwclosedropdown пробовали?
...
Рейтинг: 0 / 0
dddw
    #39761745
sboyko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky,
конечно пробовал! правда может это событие надо вызывать как то по особому?
просто так без специальных усилий событие не вызывается.
...
Рейтинг: 0 / 0
dddw
    #39761780
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тогда не знаю )
...
Рейтинг: 0 / 0
dddw
    #39762253
PaulJB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А каким образом пользователь отказывается?
ESC нажимает?
...
Рейтинг: 0 / 0
dddw
    #39762578
Фотография voronk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добавить кнопку или чекбакс для сброса фильтра?
...
Рейтинг: 0 / 0
dddw
    #39762696
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такой момент достаточно тяжело отследить
Можно конечно а повесить скрипт на clicked и keydown, но мой совет все-таки оставить в itemchanged
3 варианта
1. Просто проверять фильтр если произойдет изменение в других полях
2. Не ставить фильтр, а проверять допустимость значения при выборе
3. Вместо фильтра использовать нулевую высоту строки в dw
Возможны еще какие-нибудь решения, это я навскидку, поэтому решайте сами
...
Рейтинг: 0 / 0
dddw
    #39762730
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще была тема про это
Совет от Зорина про pbm_erasebkgnd очень хорошо работал
Но потом посыпались краши и пришлось искать другие пути
...
Рейтинг: 0 / 0
dddw
    #39763272
sboyko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PaulJB,
нет без эскейпа. просто выбирает ту же строку, что и была ранее. и кликает
...
Рейтинг: 0 / 0
dddw
    #39763276
sboyko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spas2001,
в моем случае получается что негде проверять все эти условия.
дропдаун - срабатывает всегда, а itemchanged - ТОЛЬКО при наличии изменений! нет изменений-все возвращается на круги своя-в ожидание.
...
Рейтинг: 0 / 0
dddw
    #39763292
sboyko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spas2001Такой момент достаточно тяжело отследить
Можно конечно а повесить скрипт на clicked и keydown, но мой совет все-таки оставить в itemchanged
3 варианта
1. Просто проверять фильтр если произойдет изменение в других полях
2. Не ставить фильтр, а проверять допустимость значения при выборе
3. Вместо фильтра использовать нулевую высоту строки в dw
Возможны еще какие-нибудь решения, это я навскидку, поэтому решайте сами

1.не прошло никакого изменения(но фильтр в дропдаун есть) - выходим без itemchanged-вместо наименования поля как полагалось бы - цифровое значение поля в DDDW.
2.не ставить фильтр-выбираем пункты плана на год, подпункты зависят от пункта верхнего уровня. получается мешанина из разных подпунктов, принадлежащих разным уровням.
3.не пробовал пока-буду стараться.. спасибо
...
Рейтинг: 0 / 0
dddw
    #39763298
sboyko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
voronkдобавить кнопку или чекбакс для сброса фильтра?
пользователь не должен видеть и понимать все это про фильтр. структура иерархическая, в виде дерева. выбирая в верхнем уровне - идем по выбранной ветви далее, выбирая новые подробности.
...
Рейтинг: 0 / 0
dddw
    #39763299
sboyko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spas2001Вообще была тема про это
Совет от Зорина про pbm_erasebkgnd очень хорошо работал
Но потом посыпались краши и пришлось искать другие пути

спасибо, попробую, поизучаю
...
Рейтинг: 0 / 0
dddw
    #39764087
PaulJB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если я правильно понял изначальную проблему:
У Вас есть DW, в котором есть два поля с dddw.
1. Поле с dddw, управляющее фильтром другого поля с dddw (2)
2. Поле с dddw, содержащее отфильтрованный список по значению из поля (1)

Изначально при старте DW эти поля содержат корректную информацию?
Я имею в виду комбинацию значение поля 1 и фильтр списка поля 2?

Пользователь отображает список 1 и делает выбор - срабатывает itemchanged и мы меняем фильтр.
При этом, возможно, не корректное отображение информации в поле 2, но это другая история.
Решение в этом случае есть и если надо - я опишу.

Пользователь отображает список 1 и не делает выбор - фильтр менять не надо ибо значение первого поля не изменилось.

Все работает корректно.

Поправьте меня, если я не прав и не правильно понял начальную проблему.
...
Рейтинг: 0 / 0
dddw
    #39765468
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я понимаю, есть несколько dddw. Каждый из них делает фильтр на последующий.
При открытии окна делаются фильтры "сверху вниз".
Не понятно, в чем проблема.
Клиент нажал на dddw, ничего не выбрал (выбрал текущую сторку). Закрыл dddw. Т.е. как будто ничего и не делал.
Если он опять откроет dddw, то фильтр не изменится и все будет работать.
Зачем сбрасывать фильтр?
...
Рейтинг: 0 / 0
dddw
    #39765519
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я за автора попробую ответить
Фильтр нужно установить, чтобы пользователь ничего лишнего не выбрал, но одновременно в dddw может отфильтроваться значение, которое является текущим в окне и если фильтр не сбросить мы увидим его значение, а не отображаемое поле, что некорректно
...
Рейтинг: 0 / 0
dddw
    #39766714
PaulJB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну в таких случаях надо озаботиться процессом контроля правильности отображения.
Если надо, проверять и в случае не корректного значения через settext() устанавливать значение, первое в списке (например).
При этом значение поля не изменяется. Изменяется только значение буфера и отображение и его, потом, можно легко откатить..
...
Рейтинг: 0 / 0
dddw
    #39766984
sboyko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spas2001Я за автора попробую ответить
Фильтр нужно установить, чтобы пользователь ничего лишнего не выбрал, но одновременно в dddw может отфильтроваться значение, которое является текущим в окне и если фильтр не сбросить мы увидим его значение, а не отображаемое поле, что некорректно

совершенно верно!
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / dddw
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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