|
|
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Создан пользовательский контрол. В нем нет события loseFocus При попытках создать свое событие с Event_ID ничего не выходит. Как перехватить потерю фокуса user control'a? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 11:28 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Есть разные варианты решения 1. Следить за получением фокуса других обьектов (или родительского окна) 2. Найти нужное событие и подмапировать его (в зависимости от контрола) 3. Проверять tag и т.д. и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 14:35 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Ну например PowerBuilder Specific * pbm_dwnkillfocus (Losefocus) PRIVATE или WM_KILLFOCUS pbm_killfocus " CBN_KILLFOCUS * pbm_cbnkillfocus (Losefocus) " в зависимости от контрола ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 14:44 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
С pbm_* ничего не выйдет (приколы Custom Visual Object) там даже other не отрабатывает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 15:34 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
KOliosСоздан пользовательский контрол. В нем нет события loseFocus При попытках создать свое событие с Event_ID ничего не выходит. Как перехватить потерю фокуса user control'a? А зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 17:03 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
ФилиппА зачем? А зачем существуют все события? чтобы на них навесить какую-то функциональность. Все равно Custom Visual Object для виндовс это окно, и почему там нельзя обрабатывать некоторые системные события (в частности wm_command) - непонятно. Я считаю что это баг. ЗЫ: Если взять Spy++ мы увидим что потеря фокуса контролом внутри юзер обжекта триггерит событие WM_COMMAND с параметром NotificationCode = EN_SETFOCUS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 17:44 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Dmitry. ФилиппА зачем? А зачем существуют все события? чтобы на них навесить какую-то функциональность. Какую функциональность? Я ж за этим и спрашиваю. Обычно за вопросом типа "как перехватить потерю фокуса" кроется проблема в дизайне UI... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 19:32 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Dmitry.Все равно Custom Visual Object для виндовс это окно, и почему там нельзя обрабатывать некоторые системные события (в частности wm_command) - непонятно.В том то и дело, что нет, это не окно. Это набор визуальных объектов которые отрисовываются на реальном окне. Но сам этот "набор" хоть и имеет собственые функции-события, но окном с точки зрения виндов он не является. Dmitry.Я считаю что это баг.Это не описаная в документации фича :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 20:01 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
White Owl Dmitry.Все равно Custom Visual Object для виндовс это окно, и почему там нельзя обрабатывать некоторые системные события (в частности wm_command) - непонятно.В том то и дело, что нет, это не окно. Это набор визуальных объектов которые отрисовываются на реальном окне. Но сам этот "набор" хоть и имеет собственые функции-события, но окном с точки зрения виндов он не является. Если ты еще не в курсе, все обьекты, контролы в винде это windows (окно). Чтобы создать кнопку через API, вызываем CreateWindow()... Есть редкие иселючения Java-Swing все контролы - картинка, DataWindow - картинка за исключением текущего поля ввода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 20:12 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Dmitry.Если ты еще не в курсе, все обьекты, контролы в винде это windows (окно). Чтобы создать кнопку через API, вызываем CreateWindow()...Все верно. Только Custom Visual Object в PowerBuilder это все равно не окно а набор окон (кнопки, надписи, разные другие контролы которые лежат на cvo). Но сам Custom Visual Object окном не является. PB берет все "нe-custom" визуальные объекты которые находятся на твоем cvo и кладет их напрямую на обычное окно на которое ты положил cvo. Dmitry.Есть редкие иселючения Java-Swing все контролы - картинка, DataWindow - картинка за исключением текущего поля ввода.Угу, можешь добавить в этот список и эти самые Custom Visual Object PowerBuilder'а. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 20:27 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
White OwlТолько Custom Visual Object в PowerBuilder это все равно не окно а набор окон (кнопки, надписи, разные другие контролы которые лежат на cvo). Но сам Custom Visual Object окном не является. Чушь. Смотри картинку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 21:39 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Вот она ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 21:40 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
А вот пиббл с Custom Visual Objectом - с обработкой нотификации в wm_command окна, на которое помещён Custom Visual Object... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 21:42 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Пиббл :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2006, 21:42 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
Dmitry.DataWindow - картинка за исключением текущего поля ввода. Само DataWindow - тоже окно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 09:47 |
|
||
|
Как перехватить потерю фокуса user control'a?
|
|||
|---|---|---|---|
|
#18+
ФилиппЧушь. Смотри картинкухм... действительно чушь.... Странно, когда-то я с этим ковырялся и не находил никаких хендлов. .... пять минут копания в памяти и в архивах тестовых задач Ага! это я с External Visual перепутал. Вот они тоже унаследованы от userobject а собственного хендла нету - на окне сразу лежит подгруженый из внешней dll объект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2006, 18:40 |
|
||
|
|

start [/forum/topic.php?fid=15&msg=33868327&tid=1337682]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
74ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 407ms |

| 0 / 0 |
