crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> QMainWindow OnBottom без отображения на панели (linux)
DrHaos
  опции профиля:
сообщение 2.12.2015, 21:55
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 10.10.2010
Пользователь №: 2101

Спасибо сказали: 0 раз(а)




Репутация:   0  


В главной форме создаются несколько окон 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
}


Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 5.3.2021, 13:19