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

Вниз

Перехват вызова модального окна   Найти похожие ветки 

 
Иван16   (2007-04-18 14:45) [0]

В чужой программе при нажатии на кнопку в панели инструментов происходит вызов модального окна. Как перехватить вызов этого окна?


 
Сергей М. ©   (2007-04-18 14:54) [1]

Никак.
Следует для начала исследовать и понять, какими механизмами обеспечивается та самая "модальность" того самого окна.


 
Иван16   (2007-04-18 15:00) [2]

Я думаю что это диалоговое окно.


 
Сергей М. ©   (2007-04-18 15:01) [3]

Думать-то оно не вредно)
А знать точно - оно еще полезней.


 
Иван16   (2007-04-18 15:09) [4]

Хорошо, тогда какие есть механизмы модальности?


 
Сергей М. ©   (2007-04-18 15:12) [5]

А посмотреть, к примеру, в исходниках VCL ?


 
Иван16   (2007-04-18 15:19) [6]

ShowModal


 
Сергей М. ©   (2007-04-18 15:24) [7]

А что, разве тебе достоверно известно, что "чужая программа" разработана не иначе как в Делфи ?


 
Иван16   (2007-04-18 15:25) [8]

да


 
Сергей М. ©   (2007-04-18 15:31) [9]

Ну так и посмотри для начала реализацию метода ShowModal) ..


 
Иван16   (2007-04-19 11:44) [10]

А перехватить вызов немодального окна?


 
Сергей М. ©   (2007-04-19 11:57) [11]


> вызов .. окна


Что, по-твоему, есть "вызов окна" ?

Окно не "вызывается", оно
- создается,
- уничтожается,
- изменяет свою видимость, размеры, положение, статус.


 
Иван16   (2007-04-19 12:25) [12]

в данном случае - это его отображение (Show), поскольку неизвестно когда было создано окно, заранее или непосредственно перед отображением.


 
Сергей М. ©   (2007-04-19 13:42) [13]

А что ты хочешь сделать с окном по факту его визуализации ?


 
Иван16   (2007-04-19 13:44) [14]

я хочу его не визуализировать вообще


 
Сергей М. ©   (2007-04-19 13:52) [15]

А ты подумал, как VCL в "чужом" приложении отреагирует на твой каприз ?


 
Иван16   (2007-04-19 14:03) [16]

подумать-то оно хорошо, только сначала надо увидеть как отреагирует, а потом уже и думать


 
Сергей М. ©   (2007-04-19 14:12) [17]

Пробуй)

см. SetWindowPos()


 
Иван16   (2007-04-19 14:21) [18]

получается, надо написать некоторую программу, которая будет постоянно искать в списке открытых окон искомое окно и затем его глушить с помощью SetWindowPos.


 
Иван16   (2007-04-19 14:23) [19]

а может повесть хук на некое сообщение, которое предвещает визуализацию искомого окна?


 
Сергей М. ©   (2007-04-19 14:37) [20]

Можно и хук.

см. WM_WM_WINDOWPOSCHANGING, WM_WM_WINDOWPOSCHANGE


 
Иван16   (2007-04-19 14:42) [21]

а тип хука WH_CALLWNDPROC?


 
Сергей М. ©   (2007-04-19 14:55) [22]

WH_GETMESSAGE



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

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

Наверх




Память: 0.51 MB
Время: 0.028 c
1-1186143811
race1
2007-08-03 16:23
2007.10.21
"Освобождение структуры"


2-1190724118
alles
2007-09-25 16:41
2007.10.21
Как правильно использовать TServerSocket?


15-1190031263
_aqtime_
2007-09-17 16:14
2007.10.21
Профилировка aqtime


2-1190802048
sergnnn
2007-09-26 14:20
2007.10.21
Invalid pointer operation


15-1190296896
Andy BitOff
2007-09-20 18:01
2007.10.21
Вот что можно ответить человеку задавшему такой вопрос.