在 qt 设计器(最好)或 python 中,有没有办法删除标准的 windows 顶部栏并用我自己的替换它,或者至少格式化它。这类似于新版本的 photoshop、maya、3ds max、chrome 等的外观。
我找到了这两篇文章,但除了在 C++ 中,我需要在 python 中工作之外,它们从未得到解决。
http://qt-project.org/forums/viewthread/3331/ http://qt-project.org/forums/viewthread/3847/
我确实从中得到的是 FramelessWindowHint ,它可以满足我的需求,但正如他们在文章中提到的那样,它消除了许多 Windows 功能,例如调整大小。有没有办法手动重新引入角拖动和调整大小/关闭选项?
更具体地说,我已经有了在 qt 设计器中设计的程序,并使用 pyuic4 来制作我的 python 文件。这是我加载 gui 的主要功能:
global globalMoAnWindow
app = QtGui.QApplication(sys.argv)
app.setStyle(QtGui.QStyleFactory.create('plastique'))
globalMoAnWindow = MoAnWin()
globalMoAnWindow.setWindowFlags(QtCore.Qt.FramelessWindowHint)
globalMoAnWindow.showMaximized()
sys.exit(app.exec_())
对于任何想要使用 python 并拖动小部件的人,我发现了这段代码:
def mousePressEvent(self, event):
if event.button() == QtCore.Qt.LeftButton:
self.dragPosition = event.globalPos() - self.frameGeometry().topLeft()
event.accept()
def mouseMoveEvent(self, event):
if event.buttons() == QtCore.Qt.LeftButton:
self.move(event.globalPos() - self.dragPosition)
event.accept()
我放在处理主窗口的类中