DN_CONTROLINPUT

Место, где разработчики плагинов могут поделиться своим опытом.
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

DN_CONTROLINPUT

Post by Shmuel »

Latest post of the previous page:

buniak_a_h wrote: Fri 28 Jul, 2017 04:11А вот что не приходит клик
Все мышиные события приходят, если вызвать DM_SETINPUTNOTIFY, как указано в документации.
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

DN_CONTROLINPUT

Post by buniak_a_h »

Shmuel wrote: Fri 28 Jul, 2017 07:10
buniak_a_h wrote: Fri 28 Jul, 2017 04:11А вот что не приходит клик
Все мышиные события приходят, если вызвать DM_SETINPUTNOTIFY, как указано в документации.
Я, видимо, опять что-то не так понял.
В хендлере событий для диалога я вставил код:

Code: Select all

if Msg == F.DN_INITDIALOG then
  hDlg:send(F.DM_SETINPUTNOTIFY, 1)
  -- Задание верхнего и нижнего заголовков ListBox-а
  hDlg:send(F.DM_LISTSETTITLES, 
            ID.MaskList, 
            {Title = hDlg:send(F.DM_LISTGETTITLES, ID.MaskList).Title;
             Bottom=' [ Редакт. (F4) ]  [ Удалить (Del) ]   [ Добавить (Ins) ]'} )
end                                          
В поведении диалога ничего не изменилось. Мышиные клики приходят при клике на DI_EDIT, DI_BUTTON, DI_TEXT и (внимание!) DI_DOUBLRBOX и НЕ приходят при клике на DI_LISTBOX (в том числе и на рамку!). Можно, конечно, рамку с заголовками нарисовать отдельными итемами, внешне отличаться ПОЧТИ не будет.
Может, я вызвал DM_SETINPUTNOTIFY не в тот момент (надо не в DN_INITIALDIALOG? А когда тогда?)
PS. На самом деле и без hDlg:send(F.DM_SETINPUTNOTIFY, 1) всё работало точно также. Ну очень похоже на ошибку именно в ListBox-е!
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

DN_CONTROLINPUT

Post by Shmuel »

buniak_a_h wrote: Fri 28 Jul, 2017 13:28Мышиные клики [....] НЕ приходят при клике на DI_LISTBOX (в том числе и на рамку!)
У меня приходят:
buniak_a_h wrote: Fri 28 Jul, 2017 13:28На самом деле и без hDlg:send(F.DM_SETINPUTNOTIFY, 1) всё работало точно также
В моём примере (см. выше) это не так, без DM_SETINPUTNOTIFY не работает.
Post Reply

Return to “Разработка плагинов”