Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 HWND контрола  [new]
Gwеst
Guest
Как в аксесе получить дескриптор чилд окна? например hwnd кнопки или тексбокса
4 янв 07, 15:00    [3606952]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 5127
А ты уверен, что в Аксе есть у контролов есть HWND?
4 янв 07, 15:44    [3607102]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Старый ворчун
Member

Откуда:
Сообщений: 1653
Joss
А ты уверен, что в Аксе есть у контролов есть HWND?

есть, когда контрол имеет фокус
4 янв 07, 16:04    [3607158]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Gwеst
Guest
У всех есть HWND раз он в окнах.
4 янв 07, 17:24    [3607366]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
ILL HEAD
Member [заблокирован]

Откуда:
Сообщений: 8498
Gwеst
У всех есть HWND раз он в окнах.
?
гдето ..от когото ..когдато .. кажется слышал - контролы акцеса -совсем не контролы ;)
в ВБ - да - есть
4 янв 07, 17:44    [3607413]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Старый ворчун
Member

Откуда:
Сообщений: 1653
Gwеst
У всех есть HWND раз он в окнах.

кто он?
4 янв 07, 17:59    [3607446]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Бенедикт
Member

Откуда:
Сообщений: 2099
Gwеst
У всех есть HWND раз он в окнах.

Ну, так Spy++ в руки и ищи суслика. Допустим, даже найдёшь. Что дальше?
4 янв 07, 17:59    [3607448]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Lamazoid
Member

Откуда: Оттуда
Сообщений: 433
form.Hwnd - вообщето у формы есть такое свойство - но у контрола формы - это тяжеловато - я это с пом АПИ- акса отлавливал - (ничего хорошего - сложно и не нужно - к формам ДА можно их свойство использовать - если неск экземпляров одной формы)Тут правильно говорили окна акса - это не совсем окна виндовс - (в 2007 аксе ситауция помоему меняется - незнаю точно)
4 янв 07, 18:48    [3607564]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
kuku13
Guest
Старый ворчун

есть, когда контрол имеет фокус

можно сцылку или пример?
Спасибо.
4 янв 07, 19:12    [3607631]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Старый ворчун
Member

Откуда:
Сообщений: 1653
Lamazoid
form.Hwnd - вообщето у формы есть такое свойство - но у контрола формы - это тяжеловато - я это с пом АПИ- акса отлавливал
ничего тяжелого нет, достаточно одной функции GetFocus: Declare Function GetFocus Lib "user32" Alias "GetFocus" () As Long

Еще раз повторю, родные контролы Access (TextBox, CommandButton etc) не имеют Hwnd пока не получат фокус.
4 янв 07, 19:15    [3607636]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Старый ворчун
Member

Откуда:
Сообщений: 1653
kuku13
Старый ворчун

есть, когда контрол имеет фокус

можно сцылку или пример?
Спасибо.

см

К сообщению приложен файл (HwndOfButton.zip - 8Kb) cкачать
4 янв 07, 19:23    [3607660]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
ILL HEAD
Member [заблокирован]

Откуда:
Сообщений: 8498
дык это не хвнд контрола а хвнд окна в котором контрол
4 янв 07, 19:29    [3607677]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
kuku13
Guest
Старый ворчун
достаточно одной функции GetFocus: Declare Function GetFocus Lib "user32" Alias "GetFocus" () As Long

Cэнкс
4 янв 07, 19:32    [3607684]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
ILL HEAD
Member [заблокирован]

Откуда:
Сообщений: 8498
автор
The GetFocus function retrieves the handle of the window that has the keyboard focus, if the window is associated with the calling thread’s message queue.

хы. а при проверке возвращает от разных контролов - разные
сорри
4 янв 07, 19:34    [3607686]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Старый ворчун
Member

Откуда:
Сообщений: 1653
Старый ворчун
kuku13
Старый ворчун

есть, когда контрол имеет фокус

можно сцылку или пример?
Спасибо.

см


скорректированный пример с TextBox

К сообщению приложен файл (HwndOfButton.zip - 9Kb) cкачать
4 янв 07, 19:34    [3607687]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Старый ворчун
Member

Откуда:
Сообщений: 1653
ILL HEAD
дык это не хвнд контрола а хвнд окна в котором контрол

см. скорректированный пример
4 янв 07, 19:36    [3607692]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
kuku13
Guest
2 ILL HEAD
я не знаю че ты там разное получаешь, я получаю тот же хэндл что и Spy++, че в примере? (...мне щас не скачать)
делаю так:
me.поле.setfocus
debig.print getfocus
4 янв 07, 19:48    [3607720]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
ILL HEAD
Member [заблокирован]

Откуда:
Сообщений: 8498
в последнем примере
Private Sub Command0_Click()
    Dim lngHwndButton As Long
    Dim lngHwndTextBox As Long
    lngHwndButton = GetFocus
    Me.Text0.SetFocus
    lngHwndTextBox = GetFocus
    MsgBox "hWnd of Command0: " & lngHwndButton & vbCrLf _
         & "hWnd of Text0: " & lngHwndTextBox & vbCrLf _
         & "hWnd of Form1: " & Me.Hwnd
End Sub

разное получае хвнд от разных контролов

напрягло сначала (в первом примере):
- формуоировка описания функции
- совпадение хвнд кнопки и хвнд формы

в VB - на кнопке getfocus дает hwnd контрола не совпадающее с хвнд окна формы
4 янв 07, 19:57    [3607737]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Gwеst
Guest
Старый ворчун
Gwеst
У всех есть HWND раз он в окнах.

кто он?

То есть они кантролы.
Вобщем хотел несколько сообщении отправить кантролам, интересно как они обрабатываются в аксе?
4 янв 07, 20:01    [3607741]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
mds_world
Member

Откуда: Ташкент
Сообщений: 27548
2 Старый ворчун
Любопытно. Дескриптор формы (в вашем примере Me.Hwnd) и дескриптор кнопки (у вас lngHwndButton) совпадают. Почему? Ведь в момент присваивания фокус находится на контроле Command0 (кнопка).
4 янв 07, 20:04    [3607746]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Gwеst
Guest
ILL HEAD
автор
The GetFocus function retrieves the handle of the window that has the keyboard focus, if the window is associated with the calling thread’s message queue.

хы. а при проверке возвращает от разных контролов - разные
сорри

Поток-то не один, может по этому?
4 янв 07, 20:08    [3607753]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Бенедикт
Member

Откуда:
Сообщений: 2099
Gwеst
Старый ворчун
Gwеst
У всех есть HWND раз он в окнах.

кто он?

То есть они кантролы.
Вобщем хотел несколько сообщении отправить кантролам, интересно как они обрабатываются в аксе?

"Я знал, я знал!" (c)
Gwеst,
вот есть окно некоторого класса. Самописного класса, не системного. Я не отдаю документацию по его сообщениям никому, и спокойно меняю список этих сообщений и их параметры от версии к версии, например. Я утрирую, конечно, но намёк ясен?
4 янв 07, 20:51    [3607824]     Ответить | Цитировать Сообщить модератору
 Re: HWND контрола  [new]
Gwеst
Guest
Ясен.
5 янв 07, 10:44    [3608552]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить