Как программно активизировать окно Фар

Место, где разработчики плагинов могут поделиться своим опытом.
Post Reply
Shmuel
Posts: 6836
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Как программно активизировать окно Фар

Post by Shmuel »

Вызываю из плагина ShellExecute(), чтобы запустить GUI-аппликацию, появляется окно этой аппликации, окно Фар теряет фокус.
Как программно вернуть фокус окну Фара после запуска аппликации?
Пробовал ShowWindow(), SetForegroundWindow() - не помогает. Возможно из-за того, что Фар - консольная программа.
Кто-нибудь поделится рецептом?
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Как программно активизировать окно Фар

Post by DrKnS »

Список задач, который по Ctrl+W, вроде бы вполне переключает на другие копии far.
User avatar
HaRT
Moderator
Posts: 10863
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Как программно активизировать окно Фар

Post by HaRT »

Shmuel, пробовали в ShellExecute для параметра nShowCmd сразу передать SW_SHOWNOACTIVATE?
MSDN wrote:SW_SHOWNOACTIVATE (4)

Displays a window in its most recent size and position. The active window remains active.
У меня для запуска из GUI-приложения отработало ожидаемо.
13:57 MSK Из консольного тоже.
Last edited by HaRT on Fri 06 Apr, 2018 11:57, edited 1 time in total.
Reason: Добавлена строка про консольное приложение
Фар есть инструмент, а не нянька. © 2009 DrKnS
Shmuel
Posts: 6836
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 530 times

Как программно активизировать окно Фар

Post by Shmuel »

Большое спасибо обоим ответившим. Рецепт от HaRT было легче проверить - это то, что надо.
Рецепт от DrKnS скорее всего тоже подошёл бы, но уже не проверял.
Post Reply

Return to “Разработка плагинов”