Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Вниз

Как найти HWND у TSpeedButton в чужом приложении?   Найти похожие ветки 

 
comwad ©   (2004-01-30 14:01) [0]

Добрых суток, ALL !
Используется код для просмотра имен и классов компонентов в
ЧУЖОМ приложении.

var
wnd, TheChildHandle: HWND;
ButtonCaption: Array[0..NameLength] of Char;
ButtonCaptionN: Array[0..NameLength] of Char;

  wnd := FindWindow(nil, PAnsiChar(NameApp));
  if wnd <> 0 then
  begin
  GetClassName(wnd, ButtonCaption, NameLength);
  GetWindowText(wnd, ButtonCaptionN, NameLength);
  Memo1.Lines.Add(String(ButtonCaption)+"  "+IntToStr(TheChildHandle)+" Name:"+String(ButtonCaptionN));
  End;

Находятся без проблем компоненты классов, находящиеся в иерархии ... TComponent-TControl-tWinControl
:TButton,TBitBtn и т.д.

Проблема заключается в том  - как найти  HWND у TSpeedButton, который имеет иерархию
TComponent-TControl-tGraphicControl и TMainMenu ?

Кстати как видно - с первой часть проблемы разобрался  - всем спасибо!
http://delphimaster.net/view/4-1074063655/


 
MBo ©   (2004-01-30 14:12) [1]

HWND у TSpeedButton найти трудно... Практически невозможно...

Ведь ты иерархию привел - а разобрался, что она значит?

Да и с TMainMenu не выйдет


 
Ihor Osov'yak ©   (2004-01-30 14:22) [2]

да и теоритически также...


 
MBo ©   (2004-01-30 14:26) [3]

да, GetMenu может пригодиться.


 
comwad ©   (2004-01-30 14:41) [4]

Хотел бы задать свой вопрос немного по-другому.
Имеются ToolBar c TSpeedButton.
ToolBar имеет дискриптор,а SpeedButton нет.
Можно ли как-то произвести "нажатие" на один из SpeedButton , расположенный на
ToolBar через HWND этого ToolBar?

Типа, что работает с имеющими Handle TWinControl-ами:
SendMessage(TheChildHandle,WM_LButtonDown,1,1);
SendMessage(TheChildHandle,WM_LButtonUP,1,1);


Или это в принципе невозможно?


 
MBo ©   (2004-01-30 14:48) [5]

см. Toolbar Messages


 
BiN ©   (2004-01-30 14:51) [6]

WM_KEYDOWN на тулбаре


 
BiN ©   (2004-01-30 15:08) [7]

...вдогонку к [6]
Прошу прощения за непроверненную инфомацию :(

скорее здесь подойдет TB_SETSTATE и TBSTATE_PRESSED, но и то - для tool-, а не для speedbutton


 
comwad ©   (2004-01-30 15:49) [8]

Непонятно,если несколько SpeedButton на ToolBar,
каким методом вычислить нужный SpeedButton ?


 
comwad ©   (2004-02-04 13:29) [9]

Все работает .
Всем спасибо.

SendMessage(bar, WM_LBUTTONDOWN, MK_LBUTTON, MAKELONG(5,5));
SendMessage(bar, WM_LBUTTONUP, MK_LBUTTON, MAKELONG(5,5));



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

Форум: "WinAPI";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.061 c
1-1080031832
Artem03
2004-03-23 11:50
2004.04.11
Фокус на ПРЕДЫДУЩИЙ компонент


1-1082464357
V l a d i m i r
2004-04-20 16:32
2004.04.11
Исключительная ситуация Try ... except


3-1081658534
iva
2004-04-11 08:42
2004.04.11
компонент редактирования в стиле Object Inspector


14-1079423649
Gorlum
2004-03-16 10:54
2004.04.11
Помогите настроить


14-1081995157
Думкин
2004-04-15 06:12
2004.04.11
С днем рождения! 15 апреля.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский