gpt4 book ai didi

python - 如何使 QWidget 圆角

转载 作者:行者123 更新时间:2023-11-28 20:19:03 25 4
gpt4 key购买 nike

enter image description here

我想知道是否有一种方法可以使 Qt 小部件的角变圆?

from PyQt4 import QtCore, QtGui

class Custom(QtGui.QWidget):
def __init__(self, *args, **kwargs):
QtGui.QWidget.__init__(self, *args, **kwargs)
self.setWindowOpacity(0.9)
self.setWindowFlags(QtCore.Qt.Popup|QtCore.Qt.FramelessWindowHint)
self.setWindowTitle('Custom')
self.resize(440,220)
self.move(QtGui.QCursor.pos())

def closeEvent(self, event):
event.accept()
sys.exit(app.exec_())

def mousePressEvent(self, event):
self.close()

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

最佳答案

你可以使用QWidget.setMask(self, QRegion)

C++ 中的示例:

QWidget *widget = new QWidget;
widget->resize(300, 200);

const int radius = 10;

QPainterPath path;
path.addRoundedRect(widget->rect(), radius, radius);
QRegion mask = QRegion(path.toFillPolygon().toPolygon());
widget->setMask(mask);

widget->show();

关于python - 如何使 QWidget 圆角,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35333236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com