Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2012, 01:36   #1
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию Перебрать все внутренние компоненты окна, зная его HANDLE

Доброго времени суток!

Стоит задачка: перебрать внутренние компоннты окна по HANDLE этого окна.

Как это сделать? Как Spy++ получает список компонент и класов ннутри окна и строит дерево?

EnumChildWindows перебирает окна на экране, а не тот HWND что я ему передаю. Сейчас кувыркался с GetNextWindow, таже фигня.

КАК? Как Spy++ это делает???! Мне не дерево надо, мне нужен список компонент окна по указанному handle.

Последний раз редактировалось Человек_Борща; 04.01.2012 в 01:39.
Человек_Борща вне форума Ответить с цитированием
Старый 04.01.2012, 02:14   #2
GoodDie
 
Регистрация: 03.01.2012
Сообщений: 8
По умолчанию

что значит "не тот".

Код:
#include <windows.h>

BOOL CALLBACK LookUp(HWND wnd, LPARAM lParam)
{
	wchar_t buffTemp[MAX_PATH];
	GetClassName(wnd,buffTemp,MAX_PATH);
	MessageBox(0,buffTemp,0,0);
	return TRUE;
}

void main()
{
	HWND wndHandle = FindWindow(L"Notepad",0);
	EnumChildWindows(wndHandle, &LookUp, 0);
}
GoodDie вне форума Ответить с цитированием
Старый 04.01.2012, 04:05   #3
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

хм реально работает. Однако как проверять, принадлежит ли такой-то HWND такому-то окну?
Человек_Борща вне форума Ответить с цитированием
Старый 04.01.2012, 04:46   #4
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
хм реально работает. Однако как проверять, принадлежит ли такой-то HWND такому-то окну?
Как ни странно, ф-ция называется IsChild
netrino вне форума Ответить с цитированием
Старый 04.01.2012, 18:47   #5
GoodDie
 
Регистрация: 03.01.2012
Сообщений: 8
По умолчанию

скачай справочник по winapi и будет тебе счастье.
GoodDie вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить все окна процесса, зная его PID. Johnson Общие вопросы Delphi 2 11.01.2011 19:27
Как найти название класса процеса зная его handle? Dazz Win Api 3 16.03.2010 11:35
Как узнать handle окна имея handle обного из его компонентов SeRhy Win Api 2 18.10.2009 19:31
Получить Handle TEdit'a, зная дескриптор родительского окна Cold_Night Win Api 2 13.02.2009 16:47
Как нажать на Button в чужом приложении зная его HANDLE SeRhy Win Api 2 04.02.2009 13:43