我正在创建一个需要无框窗口的对话框,我用了
setWindowFlags(Qt::FramelessWindowHint );
这适用于Windows,但在Linux上它不起作用
BaseClass的
csGuiDialog::csGuiDialog(QWidget *parent)
: QDialog(parent)
{
Qt::WindowFlags flags = Qt::Dialog| Qt::FramelessWindowHint;
QWidget::setWindowFlags(flags);
setFocusPolicy(Qt::StrongFocus);
}
派生类
csGuiOutputSelectionMainWindow::csGuiOutputSelectionMainWindow(QWidget *parent)
: csGuiDialog(parent)
{
setTitle(QString("Selection Window"));
setWindowFlags(Qt::FramelessWindowHint );
this->setStyleSheet("background-color: rgb(255, 255, 255)");
}
为什么它不在Linux中工作
答案 0 :(得分:0)
QRectF framelessGeom = QRectF(15,10,900,575);
setMask(framelessGeom.toRect());
这很有效但是小部件右侧和底部的阴影效果消失了。这个阴影效果是linux中所有小部件的默认值