Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2010, 20:13   #1
Vladya
Форумчанин
 
Аватар для Vladya
 
Регистрация: 04.11.2008
Сообщений: 360
По умолчанию Работа с окнами

Добрый вечер! У меня такой вопрос: как сделать окно (не моей программы, вообще любое окно) активным?
Скажем я из-под своей программы запускаю несколько сторонних приложений и теперь я хочу что бы при нажатии на кнопку в моей программе приложение, название которого аналогично названию кнопки, стало активным, тоесть перешло на передний план и т.д. Как такое можно реализовать?
Мой скромненький сайт
Vladya вне форума Ответить с цитированием
Старый 07.05.2010, 20:46   #2
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Код:
Procedure SwitchToThisWindow(H1: HWnd; X: Bool); Stdcall;
External User32 Name 'SwitchToThisWindow';
{X = False: Size unchanged, X = True: normal size}

Procedure TForm1.Button1Click(Sender: TObject);
Begin
SwitchToThisWindow(FindWindow('notepad', Nil), True);
End;
...
SetForegroundWindow();
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 07.05.2010, 21:11   #3
Vladya
Форумчанин
 
Аватар для Vladya
 
Регистрация: 04.11.2008
Сообщений: 360
По умолчанию

не работает
извините может я ввел вас в заблуждение, название программы имеется в виду то название которое отображается на панели задач.
Мой скромненький сайт
Vladya вне форума Ответить с цитированием
Старый 07.05.2010, 21:17   #4
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Извиняюсь, это я немного ошибся. Вызывайте процедуру так:
Код:
Procedure TForm1.Button1Click(Sender: TObject);
Begin
SwitchToThisWindow(FindWindow(Nil, 'Заголовок окна'),True);
End;
Проверил. У меня всё работает.
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 07.05.2010, 21:21   #5
Vladya
Форумчанин
 
Аватар для Vladya
 
Регистрация: 04.11.2008
Сообщений: 360
По умолчанию

Вот так и у меня работает
Спасибо огромнейшее, очень помогли!
Мой скромненький сайт
Vladya вне форума Ответить с цитированием
Старый 07.05.2010, 21:22   #6
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Цитата:
Спасибо огромнейшее, очень помогли!
Не за что!
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с чужими окнами ZBEP Win Api 19 13.05.2014 08:17
Работа с чужими окнами Djem1991 Общие вопросы Delphi 3 15.11.2009 22:35
работа с чужими окнами betirsolt Общие вопросы Delphi 8 06.10.2009 12:52
Работа с окнами Visual c++ dampirik Visual C++ 5 17.08.2009 18:22
работа с окнами Briz Общие вопросы Delphi 5 07.10.2007 22:20