![]() |
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]() ![]() ![]() |
|
Andreyzpr |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 4.2.2007 Где: Украина Репутация: 1 Всего: 1 |
дык
как получить активное окно(название)??? И еще, как узнать, активно ли окно моей программы, именно не по названию окна (название окна можно подменить)? |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 34 Всего: 459 |
Ого это как? Может речь идет о подмене заголовка окна? Не думаю что класс окна так легко подменить? -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
Andreyzpr |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 4.2.2007 Где: Украина Репутация: 1 Всего: 1 |
Ну да заголовка..
|
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 34 Всего: 459 |
GetForegroundWindow(); - дает хэндл верхнего окна (родительское окно как, например, форма).
Это сообщение отредактировал(а) Alexeis - 6.7.2007, 20:20 -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
lukas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 23.2.2007 Репутация: 3 Всего: 15 |
на счет активности твоего окна... можно проверить так
-------------------- http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi. |
|||
|
||||
Andreyzpr |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 4.2.2007 Где: Украина Репутация: 1 Всего: 1 |
lukas твой пример не работает
Я поставил его на таймер, который по твоему примеру проверяет - если активно - в мемо выводить Активно, если нет, то неактивно... Запустил прогу, полазил по компу (окно было неактивным) а оно все написало что окно все время было активным.. Alexeis, если чесно до меня не дошло де мона применить этот пример? помоги ;) ато я чет протармазил |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 34 Всего: 459 |
Andreyzpr, сравнить хэндлы форм и хэндл, который вернула функция GetForegroundWindow();, если совпали, то одна из форм приложения выше всех.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
Andreyzpr |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 4.2.2007 Где: Украина Репутация: 1 Всего: 1 |
Что значит выше всех?
Чтобы было понятнее, объясню в чем суть вопроса: я пишу чат, и хочу сделать следующее: когда пользователь сидит в чате (активно окно чата) то у него иконка в списке пользователей одного цвета, когда же пользователь занимаеца другими вещами (окно чата неактивно), то иконка другого цвета. А я не знаю как проверить, активно ли мое окно... |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 34 Всего: 459 |
Так все делается намного проще. Кидается на форму компонент TApplicationEvents
У него есть события OnActivate, OnDeactivate, которые срабатывают при потере и получения фокуса приложением. Тоже самое есть и у любой формы, но они срабатывают при переключении от одной формы к другой. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
Andreyzpr |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 4.2.2007 Где: Украина Репутация: 1 Всего: 1 |
Alexeis спасибо ;-) так просто оказалось ;-)
вопрос решенный ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |