qt create 在Linux下如何通过样式表去掉标题栏,setwindowflag不生效,还有什么办法呢
时间: 2023-12-03 16:42:07 浏览: 135
QT 在Linux下开发视频监控应用
4星 · 用户满意度95%
如果使用Qt Creator创建的窗口,您可以通过在代码中设置窗口标志来隐藏标题栏。但是,有时该方法可能不起作用,这可能是因为操作系统的限制或窗口管理器的限制。在这种情况下,您可以尝试使用样式表来隐藏标题栏。
以下是通过样式表隐藏标题栏的步骤:
1. 在Qt Creator中打开您的项目,并在要隐藏标题栏的窗口的构造函数中添加以下代码:
```
setWindowFlags(Qt::FramelessWindowHint);
```
2. 在您的项目中创建一个样式表文件(例如styles.qss),并在其中添加以下代码:
```
QMainWindow {
border: none;
padding: 0px;
}
```
3. 在您的窗口构造函数中添加以下代码以将样式表应用于窗口:
```
QFile styleFile(":/styles.qss");
styleFile.open(QFile::ReadOnly);
QString styleSheet = QLatin1String(styleFile.readAll());
setStyleSheet(styleSheet);
```
4. 编译并运行您的应用程序,您应该看到标题栏已被隐藏。
请注意,这种方法可能会影响窗口的其他样式,因此您可能需要根据需要进行样式表的调整。
阅读全文