powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как можно вывести приложение поверх остальных, сделав его активным?
11 сообщений из 11, страница 1 из 1
Как можно вывести приложение поверх остальных, сделав его активным?
    #39699974
Ghost74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет! Пару месяцев мучаюсь с таким вопросом, но гугл не помогает, делаю сам - не работает должным образом.
Суть в чём: необходимо вывести приложение на передний план, чтобы не клацать на него, чтобы горячие клавиши работали, в общем чтоб оно стало активным. Функции типа
Код: pascal
1.
ShowWindow, SetWindowPos, SetforegroundWindow и тд

не работают, либо срабатывают через раз, что на windows 7 на разных ПК, что на windows 10.
Много чего перепробовал, но пока сделал так:
Код: pascal
1.
2.
3.
4.
5.
6.
form6.formstyle:=fsstayontop;
    application.bringtofront;
     SetForegroundWindow(Application.Handle);
    MainForm.formstyle:=fsnormal;
     SetActiveWindow(application.Handle);
     MainForm.SetFocus;


Но необходимо нажимать на окно, чтобы выбрать его, а это не удобно. Подскажите пожалуйста, как можно реализовать такую функцию, чтобы не срабатывала через раз и не приходилось вручную делать программу активной?
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39699978
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У Рэйдмонда Чена есть хорошая статья, почему это хреновая затея. Если не ошибаюсь, у Гансмокера перевод был.
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39699979
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В догонку, подсказка - посмотреть как система себя ведёт, когда хочет уведомить юзверя
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39699980
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ghost74Суть в чём: необходимо вывести приложение на передний план, чтобы не клацать на него,
чтобы горячие клавиши работали, в общем чтоб оно стало активным.

Ты определись: тебе нужно именно вывести приложение на передний план или чтобы горячие
клавиши работали? С первым обломись, второе делается через функцию RegisterHotKey().
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39699991
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39699992
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GunSmoker,

а я знаю как.
Но на этот раз не скажу.
Не то в очередном патче винды и это способ прикроют.
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39699996
под ван
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ghost74Всем привет! Пару месяцев мучаюсь с таким вопросом, но гугл не помогает, делаю сам - не работает должным образом.
Суть в чём: необходимо вывести приложение на передний план, чтобы не клацать на него, чтобы горячие клавиши работали, в общем чтоб оно стало активным. Функции типа
Код: pascal
1.
ShowWindow, SetWindowPos, SetforegroundWindow и тд

не работают, либо срабатывают через раз, что на windows 7 на разных ПК, что на windows 10.
Много чего перепробовал, но пока сделал так:
Код: pascal
1.
2.
3.
4.
5.
6.
form6.formstyle:=fsstayontop;
    application.bringtofront;
     SetForegroundWindow(Application.Handle);
    MainForm.formstyle:=fsnormal;
     SetActiveWindow(application.Handle);
     MainForm.SetFocus;


Но необходимо нажимать на окно, чтобы выбрать его, а это не удобно. Подскажите пожалуйста, как можно реализовать такую функцию, чтобы не срабатывала через раз и не приходилось вручную делать программу активной?
Ищи и ковыряй исходники TElTopmost из набора ElPack Tools от lmd.de - эта штука просто сущий термояд. Если её бросить на форму, то это окно перекрыть больше не сможет никто включая саму систему. По крайней мере так было от экспи до восьмёрки, в десятке не проверял.
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39699998
GunSmoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39700079
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из всех видов компьютерных преступлений наиболее отвратительным является кража фокуса у активного окна
(с) А. Махоткин
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39700135
Ghost74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov, нужно чтобы при выводе поверх других окон, приложение было активным
...
Рейтинг: 0 / 0
Как можно вывести приложение поверх остальных, сделав его активным?
    #39708218
QT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
QT
Гость
Это неприлично, негигиенично,
И несимпатично, вам говорят.

> необходимо вывести приложение на передний план
А активировать-то его зачем?
> чтобы горячие клавиши работали
Они и так вполне работают.
> необходимо нажимать на окно
Зачем?
> делать программу активной
Зачем?
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как можно вывести приложение поверх остальных, сделав его активным?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]