crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в QMainWindow OnBottom без отображения на панели (linux)
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
DrHaos Дата 2.12.2015, 21:55
  В главной форме создаются несколько окон CGadget.

Необходимо разместить окна на рабочем столе как виджеты без отображения на панели задач.
В Windows все работает, а Linux не могу подобрать флаги. Либо окна поверх всех остальных, либо отображаются на панели задач, либо отображается только одно окно из всех.

CGadget::CGadget(QString patchQml , QWidget *parent)
    : QMainWindow(parent)
{
    setAttribute(Qt::WA_TranslucentBackground);
    setStyleSheet("background:transparent;");

    view = new QDeclarativeView;

    QUrl url = QUrl::fromLocalFile(patchQml);
    view->setSource(url);
    setCentralWidget(view);
    setMinimumSize(view->size());
    setMaximumSize(view->size());

#ifdef Q_OS_WIN32
    setWindowFlags(Qt::Desktop|Qt::FramelessWindowHint|Qt::WindowStaysOnBottomHint|Qt::Tool|Qt::SplashScreen);
#endif

#ifdef Q_OS_LINUX
    setWindowFlags(Qt::X11BypassWindowManagerHint|Qt::FramelessWindowHint|Qt::Widget    );
#endif
}


Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 21.4.2021, 20:31