Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.03;
Скачать: CL | DM;

Вниз

Как получить handle фокусного объекта   Найти похожие ветки 

 
SamProf ©   (2006-08-12 16:44) [0]

Я знаю:
GetForegraudWindow - возвращает handle активного окна в винде
GetActiveWindow - возврашяет активное окно моего приложения
GetFocus - - хандл фокусного компонента на моей форме

А нужно получить хандле обьекта, активной в данной формы в системе!


 
Zeqfreed ©   (2006-08-12 16:54) [1]

> [0] SamProf ©   (12.08.06 16:44)

AttachThreadInput + GetFocus.


 
SamProf ©   (2006-08-12 16:57) [2]

Вообще проблема такая - мне нада отправить месагу о нажатии клавиши активному объекту - я так понимаю нада найти хандл + SendMessage?


 
Джо ©   (2006-08-12 16:58) [3]

Можно вот так:

var
ThreadId: THandle;
GuiThreadInfo: tagGUITHREADINFO;
Txt: array [0..1024] of Char;
begin
ThreadId := GetWindowThreadProcessId ( Handle_Окна );
if ThreadId = 0 then
  RaiseLastOSError;

GuiThreadInfo.cbSize := SizeOf(tagGUITHREADINFO);
if not GetGUIThreadInfo  (ThreadId,GuiThreadInfo) then
  RaiseLastOSError;

 //  в GuiThreadInfo.hwndFocus хранится хэндл нужного окна (если есть).
end;



 
Zeqfreed ©   (2006-08-12 17:00) [4]

Мне больше по душе AttachThreadInput + GetFocus :)


 
Джо ©   (2006-08-12 17:02) [5]

> [3] Джо ©   (12.08.06 16:58)

Сорри, форматирование уползло :(


> [4] Zeqfreed ©   (12.08.06 17:00)
> Мне больше по душе AttachThreadInput + GetFocus :)

Дело вкуса :0)


 
begin...end ©   (2006-08-12 19:45) [6]

Странно, но вчера этот вопрос уже поднимался...

http://delphimaster.net/view/4-1155297332/


 
Джо ©   (2006-08-12 19:59) [7]

> [6] begin...end ©   (12.08.06 19:45)
> Странно, но вчера этот вопрос уже поднимался...
> http://delphimaster.net/view/4-1155297332/

Этот вопрос поднимался даже недели 3 назад:
http://delphimaster.net/view/4-1155297332/
(посты [84] и [88]).
И, вероятно, еще не раз будет "подниматься" :)


 
Ketmar ©   (2006-08-12 20:35) [8]

> [2] SamProf ©   (12.08.06 16:57)
keybd_event() не лечит разве в этом случае?



Страницы: 1 вся ветка

Текущий архив: 2006.09.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.046 c
6-1143721565
vic_774N
2006-03-30 16:26
2006.09.03
решение проблемы подсей


6-1145531239
Kray
2006-04-20 15:07
2006.09.03
Извлечение результатов поиска Yandex a


3-1151210776
antoxa2005
2006-06-25 08:46
2006.09.03
Можно ли как-нибудь обратиться к базе Access на дрегом компьютере


3-1151224583
Chort
2006-06-25 12:36
2006.09.03
Проблема с картинкой


2-1155544010
Noname27
2006-08-14 12:26
2006.09.03
ServerSocket и ClientSocket