как я могу переключать два приложения Qt в одном окне

#qt4

#qt4

Вопрос:

Я запускаю приложение (приложение № 1) на сенсорном экране с помощью Qt4.6.3 в ОС Linux. Когда я нажимаю кнопку в приложении № 1, должно появиться новое приложение (приложение № 2). Приложение № 2 должно содержать кнопки закрытия и сворачивания. Когда я нажимаю кнопку сворачивания, она должна быть свернута, а затем я нажимаю кнопку в приложении № 1, приложение № 2 должно снова появиться. То есть два приложения должны находиться в состоянии переключения. Как я могу этого добиться? Пожалуйста, помогите мне. Заранее спасибо.

Ответ №1:

Поскольку вы работаете в Linux, наиболее переносимым и удобным способом, на мой взгляд, было бы настроить какой-либо вид межпроцессной связи (например, связь с сокетом) между этими двумя процессами. Если бы вы работали в Windows, вы могли бы использовать «FindWindow» или аналогичный API, предоставляемый ОС, чтобы найти окно другого процесса, но в Linux вы зависите от оконного менеджера.

Когда другие процессы получат сообщение, вам нужно вывести его на передний план. Вы можете использовать QWidget:: activateWindow для захвата фокуса клавиатуры или QWidget:: raise, если вы хотите убедиться, что окно также расположено сверху.

Прочитайте документацию по Qt для получения информации о методе.