powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / dddw
5 сообщений из 5, страница 1 из 1
dddw
    #32788683
f45f
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда фокус попадает на dw, фокус находится в поле c edit style DDDW. Мне нужно чтобы автоматически раскрывался список. Если я выставляю свойство always show list, то так и происходит. При нажатии ENTER, фокус переходит на след. поле. Но если я щелкаю мышью на елементе списка, то лист не закрывается. Что бы в данном случае мне реализовать переход фокуса, нужно мапить событие клика на списке dddw. Есть ли такое событие, если нет, то подскажите пожалуйста как реализовать.
СПАСИБО.
...
Рейтинг: 0 / 0
dddw
    #32788812
Guest_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может вместо события click сэмулировать нажатие F4?
...
Рейтинг: 0 / 0
dddw
    #32788920
f45f
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вариант, сейчас попробую.
...
Рейтинг: 0 / 0
dddw
    #32789168
f45f
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я решил проблему
замапил для дв pbm_command
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
DataWindowChild chw
GetChild("crg_sort",chw)
if hwndchild = handle(chw) then
CHOOSE CASE notificationcode
	case  1281    //clicked
	dddwlistclick = true   // флаг клика
end choose
end if

После pbm_command у меня отрабатывается itemchanged
Код: plaintext
1.
2.
3.
if dddwlistclick = true then
	dddwlistclick = false
	Send(Handle(this), 256 , 9 ,Long( 0 , 0 ))	// таб
end if
Плохо только что для каждого dddw нужно выполнять GetChild
Идея из документа: http://www.bhitcon.net/press/pdf/PBDJ_10-2.pdf
...
Рейтинг: 0 / 0
dddw
    #32791946
PaulJB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я делаю так:

Declare ...:
SUBROUTINE keybd_event( int bVk, int bScan, int dwFlags, int dwExtraInfo) LIBRARY "user32.dll"

В событии Itemchanged ... :

choose case this.getcolumnname()
case '...', '...' // список полей с dddw
keybd_event( 115,0,0,0 ) // F4 key down
keybd_event( 115,0,2,0 ) // F4 key up
end choose
return 0
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / dddw
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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