Как работает управление окнами во встроенном qt? - PullRequest
2 голосов
/ 12 февраля 2009

Как работает управление окнами во встроенном qt, где Qt рисует непосредственно в кадровый буфер, а не через отдельную систему управления окнами? Могу ли я запустить несколько программ одновременно? Я получаю композитинг и маленькую кнопку [x], максимизацию и так далее?

Ответы [ 3 ]

5 голосов
/ 06 марта 2009

Вам необходимо запустить одно приложение в качестве сервера, чтобы обеспечить средства управления окнами; например, передавая параметр -qws в командной строке при запуске.

Любые другие приложения запускаются как клиенты. Подробности смотрите на этой странице:

http://doc.qt.digia.com/4.5/qt-embedded-running.html

1 голос
/ 03 июня 2014

Из документации Qt:

Приложение Qt для встраиваемого Linux требует серверного приложения для быть запущенным или быть самим приложением сервера. Любой Qt для Встроенное Linux-приложение может быть серверным приложением конструирование объекта QApplication с помощью QApplication :: GuiServer введите или запустите приложение с параметром командной строки -qws.

Таким образом, вы можете передать QApplication::GuiServer в качестве третьего параметра конструктору QApplication, чтобы иметь сервер:

QApplication app( argc, argv, QApplication::GuiServer );

Или передать -qws аргумент приложению, чтобы запустить его как сервер:

./MyApp -qws

Другие приложения должны запускаться как клиенты.

1 голос
/ 12 февраля 2009

Какую часть работы вы спрашиваете? Если вам нужен базовый обзор, подумайте о нем, как о сервере X-windows в Linux, где кадровый буфер рисует границы, декорации и т. Д., Только библиотеки Qt скомпилированы для более прямой работы с кадровым буфером, чем с Серверы X-Windows. Различные аспекты фрейм-буфера также могут быть переопределены программой, а не должны быть изменены оконным сервером. Тем не менее, для большей части вашего пользовательского интерфейса, работающего с Qt, вы будете использовать те же классы (QDialog и т. Д.), Что и в обычной настольной версии. Они просто нарисованы другим базовым слоем.

...