pyqt如何设置窗口边框为圆角
时间: 2024-05-03 09:11:38 浏览: 138
editText和Dialog等组件的圆角边框设置
要将PyQt窗口边框设置为圆角,可以使用QSS样式表。以下是一个简单的示例代码,使用QSS样式表将窗口边框设置为圆角:
```python
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtCore import Qt
import sys
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle('Round Window')
self.setGeometry(100, 100, 400, 300)
self.setWindowFlags(Qt.FramelessWindowHint)
self.setAttribute(Qt.WA_TranslucentBackground)
def paintEvent(self, event):
painter = QPainter(self)
painter.setRenderHint(QPainter.Antialiasing)
painter.setBrush(Qt.white)
painter.setPen(Qt.NoPen)
rect = self.rect()
rect.setWidth(rect.width() - 1)
rect.setHeight(rect.height() - 1)
painter.drawRoundedRect(rect, 10, 10)
if __name__ == '__main__':
app = QApplication(sys.argv)
mainWindow = MainWindow()
mainWindow.show()
sys.exit(app.exec_())
```
在这个例子中,我们首先将窗口的边框设置为无边框,然后使用setAttribute()方法设置窗口的背景透明。接下来,我们在窗口的paintEvent()方法中使用QPainter绘制一个圆角矩形。使用drawRoundedRect()方法来绘制圆角矩形,并指定它们的圆角半径。这里我们将半径设置为10像素。
最后,我们将这个自定义窗口的实例显示出来,并启动应用程序的事件循环。
阅读全文