我正在使用PyQt4开发我的Python应用程序,我想在Windows中自定义我的应用程序界面(QMainWindow,QLineEdit等) 这个观点(或其他):
而不是这个(Windows 10上的默认样式):
答案 0 :(得分:1)
对于窗框边框以外的所有样式,请使用Qt样式表(QSS)(Documentation)。
对于框架边框来说,它有点困难:
参见Qt window flags example,看看Qt可以对窗框做什么。
基本上你不能设置窗框样式(它们采用OS的样式),但是你可以隐藏/显示按钮,你可以完全无框地显示窗口。
然而,在Windows上,有些人入侵了Windows框架栏(Tabs in title bar: what's the secret?)。这也可能与Python有关。
最普遍的方法是(虽然这有点代价)不使用任何操作系统提供的框架(Qt::CustomizeWindowHint
)然后在里面实现你自己的样式框架实现拖放标题栏和边框和等等。
通过这种方式,您可以轻松实现包括示例在内的所有可能的帧边框,但您必须重新实现按钮和拖动行为,并且响应可能比平时快一点。此外,外观也不是开箱即用的操作系统,因为它适用于Qt自己的框架边框。
例如在Linux中,标题栏通常在最大化时以不同方式显示 - 那时你就不会这样了。
自定义框架栏的示例:Customize title bar and window