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

Вниз

Хук на смену caption а окна   Найти похожие ветки 

 
Makhanev A.S. ©   (2004-06-13 23:07) [0]

Хук на WM_SETTEXT не совсем подходит, т.к. часто генерится (напр. из-за тулбаров).
Пробовали WM_COMMAND с HIWORD(Msg.wParam) = EN_UPDATE - вообще ничего не ловится (хотя должно(!?)).

Что можете посоветовать?


 
Mim1 ©   (2004-06-13 23:24) [1]

Опишите вашу задачу например вот в таком стиле
"Мне надо сделать тото, сето, я думаю решить ее такто, иробывал это и это".
В текущем вопросе много непонятностей, например
1) зачем вам отлавливать измеения заголовка
2) зачем нужен хук
3) является окно вашим (т.е.) принадлежит ли вашему процессу
4) если да то зачем хук
5) почему тулбары как т о влияют на заголовок окна
и т.д.


 
DeadMeat ©   (2004-06-14 01:43) [2]

Вообще-то Mim1 в чём-то прав...
А так попробуй HSHELL_REDRAW

---
...Death Is Only The Begining...


 
Makhanev A.S. ©   (2004-06-14 11:14) [3]


> Mim1 ©   (13.06.04 23:24) [1]

Описываю:

Мне надо, чтобы моя программа получала уведомление каждый раз как только любое видимое окно (IsWindowVisible) в ОС Windows (95-2003) меняет свой caption, т.е. текст заголовка.

1) зачем вам отлавливать измеения заголовка:
Неважно. Здесь ошибки быть не может, так стоит задача.
Программа должно получать уведомление каждый раз, когда меняется кэпшен любого видимого окна в системе.

2) зачем нужен хук:
хуки - обычный метод решения подобных задач.
Если Вы знаете другие методы (кроме EnumWindows), то буду рад послушать и почитать.

3) является окно вашим (т.е.) принадлежит ли вашему процессу:
Нет.

5) почему тулбары как-то влияют на заголовок окна:
WM_SETTEXT вполне подходит для данной задачи, НО к примеру в MS Word он посылается окну каждый раз при resize.
Также он посылался при наведении мыши на его тулбары, но это мы отфильтровали (IsWindowVisible).
Поэтому я и спросил о более верном методе определения смены кэпшена.


> DeadMeat ©   (14.06.04 01:43) [2]
> А так попробуй HSHELL_REDRAW

Уже пробовали, это к сожалению не то. HSHELL_REDRAW возникает при смене тайтла главного окна (Application.Title). К примеру, для Word"а это подойдет, а для Delphi - нет.

Интересны любые предложения/возражения.


 
Makhanev A.S. ©   (2004-06-16 01:41) [4]

нет больше вариантов?


 
Cobalt ©   (2004-06-17 23:20) [5]

Самый простой - хранить список текстов всех видимых окон.
И на событии изменения текста проверять - изменилось ли?



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

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

Наверх




Память: 0.45 MB
Время: 0.036 c
9-1082496675
Demi
2004-04-21 01:31
2004.08.01
С чего начать и чем лучше


4-1087545840
DimonA
2004-06-18 12:04
2004.08.01
Изменение региональных настроек


14-1089634240
x0dz0r
2004-07-12 16:10
2004.08.01
Прошу помочь плиз


1-1089875368
Alex197777777777777
2004-07-15 11:09
2004.08.01
Почему D7 неправильно вычисляет выражение. Скоро поедет крыша


14-1089525176
Aldor_
2004-07-11 09:52
2004.08.01
Опять заголовки





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский