Можно ли в QT создавать диалоговые окна в offscreen буфере?
Т.е. чтобы диалогового окна не было видно на экране и оно рисовалось в битмап, который можно нарисовать где-угодно. Например, на экране монитора в игре (т.е. сделать реально работающий интерактивный интерфейс) или встроить QT диалог в WinAPI/MFC диалог. Разумеется, события мыши/клавиатуры придётся преобразовывать и пересылать вручную.
Я знаю, что есть OffscreenSurface, но это для OpenGL и есть RasterWindow, но там вроде для рисования. Мне же нужно именно стандартные QT диалоги рисовать в битмапе (Не важно, с QML или без. Лучше с ним, наверное).
Я только начал изучать QT, пока плохо понимаю его :)
widget - объект диалога? При создании диалогового окна нужно какой-то стиль задавть, чтобы окно было невидимым, но обрабатывало события? Т.е. если я не вызову метод show, то диалог в принципе не создастся, а если вызову, то диалог будет видимым.
maaGames, QDialog может создать свое содержимое - внутренние виджеты и лайауты еще в конструкторе. Вызов show или exec сделает его видимым. Но возможно, получится его отрендерить еще до вызова show.
towin, Мне нужно не только отрендерить вншний вид диалога, но чтобы и обработчик сигналов работал. Т.е. чтобы был полнофункциональный диалог, но без видимого окна.
Вообще, мне нужно встроить QT диалог внутрь MFC приложения. Чтобы диалог был внутри CDockablePane. С модальными-немодальными диалогами проблем-то нет, а вот чтобы встроить в интерфейс уже проблемы есть. Как я понял, нет простого способа встроить QT диалог внутрь MFC, а вот если сделать через картинку, то можно это будет обойти. ЗАодно и в игрушки и хоть в куда добавлять интерактивные интерфейсы.
* избавиться от MFC нельзя, т.к. приложение написано на MFC, а я просто делаю плагин. Через "картинку" можно будет сделать интерфейс переносимым между приложениями, независимо от API - картинку в диалоге в любой системе можно нарисовать.