Python-如何删除窗口边框?我已经将UI从Qt导入Python并应用了setWindowFlags

Python-如何删除窗口边框?我已经将UI从Qt导入Python并应用了setWindowFlags,python,linux,pyqt,pyqt4,fedora,Python,Linux,Pyqt,Pyqt4,Fedora,如何减少此窗口边框(删除最小化/最大化/关闭) 1导入系统 2从PyQt4导入QtCore、QtGui 3从qt导入Ui_主窗口 4. 5类StartQT4(QtGui.QMainWindow): 6定义初始化(自,父=无): 7 QtGui.QWidget.\uuuuu init\uuuuuuu(self,parent) 8 self.ui=ui\u主窗口() 9 self.ui.setupUi(self)) 10 11如果名称=“\uuuuu main\uuuuuuuu”: 12 app=

如何减少此窗口边框(删除最小化/最大化/关闭)

1导入系统
2从PyQt4导入QtCore、QtGui
3从qt导入Ui_主窗口
4.
5类StartQT4(QtGui.QMainWindow):
6定义初始化(自,父=无):
7 QtGui.QWidget.\uuuuu init\uuuuuuu(self,parent)
8 self.ui=ui\u主窗口()
9 self.ui.setupUi(self))
10
11如果名称=“\uuuuu main\uuuuuuuu”:
12 app=QtGui.QApplication(sys.argv)
13 myapp=StartQT4()
14 myapp.show()

15 app.setWindowFlags(app.FramelessWindowHint)一些windowflags需要在构造函数中设置为
QMainWindow
,我怀疑这就是其中之一。有关更多信息,请参阅

请注意,您的
STartQT4.\uuuu init\uuuu
调用了错误的构造函数。您应该调用
QMainWindow.\uuuuu init\uuuu
,而不是
QWidget.\uuuuu init\uuu


使用
super(StartQT4,self)。\uuuu init\uuuuu(parent,)
而不是在主窗口上调用
show
之前,需要设置窗口标志

最简单的工作示例如下所示:

import sys
from PyQt4 import QtCore, QtGui

class StartQT4(QtGui.QMainWindow):
    def __init__(self, parent=None):
        super(StartQT4, self).__init__(parent)
        self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
        self.b = QtGui.QPushButton("exit", self, clicked=self.close)

if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    myapp = StartQT4()
    myapp.show()
    sys.exit(app.exec_())
import sys
from PyQt4 import QtCore, QtGui

class StartQT4(QtGui.QMainWindow):
    def __init__(self, parent=None):
        super(StartQT4, self).__init__(parent)
        self.setWindowFlags(QtCore.Qt.FramelessWindowHint)
        self.b = QtGui.QPushButton("exit", self, clicked=self.close)

if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    myapp = StartQT4()
    myapp.show()
    sys.exit(app.exec_())