Получить hwnd ListBox-ов и подобных элементов

Программирование на Visual Basic for Applications
GDK
Обычный пользователь
Обычный пользователь
 
Сообщения: 80
Зарегистрирован: 23.10.2008 (Чт) 16:15

Получить hwnd ListBox-ов и подобных элементов

Сообщение GDK » 23.10.2008 (Чт) 17:21

Как получить hwnd элементов управления, которые по умолчанию предлагает для и спользования IDE VBA.

Можно ли вообще как нибудь это сделать? Для UserForm нашёл, что можно через API-Ф, которая ищет hwnd формы по её заголовку. Но вот у ListBoxa и т.п. нет заголовка. Как быть? Использовать контролы ActiveX, у которых есть св-во hwnd, что то не хочется.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Получить hwnd ListBox-ов и подобных элементов

Сообщение Viper » 24.10.2008 (Пт) 7:08

Функция API EnumChildWindows поможет тебе.
Весь мир матрица, а мы в нем потоки байтов!

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Получить hwnd ListBox-ов и подобных элементов

Сообщение Antonariy » 24.10.2008 (Пт) 10:07

Не поможет. У VBAшных контролов нет хендлов, это рисунки на юзерформе. Из-за этого, кстати, над ними не властны XP-стили.
Лучший способ понять что-то самому — объяснить это другому.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Получить hwnd ListBox-ов и подобных элементов

Сообщение Viper » 24.10.2008 (Пт) 13:03

Antonariy писал(а):Не поможет. У VBAшных контролов нет хендлов, это рисунки на юзерформе. Из-за этого, кстати, над ними не властны XP-стили.
Нды, вот те раз...
Весь мир матрица, а мы в нем потоки байтов!

GDK
Обычный пользователь
Обычный пользователь
 
Сообщения: 80
Зарегистрирован: 23.10.2008 (Чт) 16:15

Re: Получить hwnd ListBox-ов и подобных элементов

Сообщение GDK » 24.10.2008 (Пт) 16:17

Antonariy писал(а):У VBAшных контролов нет хендлов, это рисунки на юзерформе. Из-за этого, кстати, над ними не властны XP-стили.

Хм. Надо проверить.

GDK
Обычный пользователь
Обычный пользователь
 
Сообщения: 80
Зарегистрирован: 23.10.2008 (Чт) 16:15

Re: Получить hwnd ListBox-ов и подобных элементов

Сообщение GDK » 28.10.2008 (Вт) 12:57

Проверил с помощью утилиты WinSpy, входящей в состав планировщика nnCron. И в самом деле нет, кроме Combobox-ов правда, и то когда он "развёрнут кликом пользователя". Придётся ActiveX использовать.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 8

    TopList