Название: simpletextviewer - поднять assistant на передний план Отправлено: mal от Май 05, 2010, 16:55 Qt-4.6.1+ Windows XP
Сваял запуск асистента по образу и подобию как в указанном примере, и столкнулся со следующим (на примере самого simpletextviewer): Берем указанный пример examples\help\simpletextviewer\. Запускаем и раскрываем на все окно. Зовем помощь по F1 - запускается асистент, поднимается на передний план, все ок. Возвращаемся в окно программы и снова жмем F1. В статусе винды видим, что асистент активизируется, но на передний план не поднимается. Т.е. по нажатию F1 мы остаемся в окне приложения. Если ручками перейти в асистент, то видно, что он прыгнул на тот "якорь" куда надо. Собственно вопрос - как поднять приложение запущенное с помощью QProcess (в нашем конкретном случае assistant.exe) на передний план? Название: Re: simpletextviewer - поднять assistant на передний план Отправлено: mal от Май 06, 2010, 10:17 Смотрю ответов немного ).
Пока, чтоб не морочиться как это сделать в винде (findWindow...) и как в линуксе, сделал тупо: если процесс запущен - убить процесс и создать/стартовать его по новой с нужным якорем. На текущий момент имею запуск и всплытие асистента с нужной информацией по первому требованию . Что и требовалось Лучше решения пока не нашел. Название: Re: simpletextviewer - поднять assistant на передний план Отправлено: spectre71 от Май 09, 2010, 10:34 Методами QT, Никак!
Единственный вариант - закрывать процесс assistant который был поднят ранее (если нужен только 1 экземпляр) и поднимать новый процесс. Можно еще встраивать assistant в окно своего приложения. Хотя судя по его кривезне - не безопасно. :) |