python定义一个圆_Python在pyqt5中创建一个实圆形按钮

我试图创建一个圆形按钮,但实际上pyqt仍然创建了一个正方形按钮。全部发现的例子只是创建了一个正方形的按钮,并在其中放置了一个圆形的图像,但是当我试图隐藏按钮的背景时,它还是失败了。我还尝试添加一些悬停功能,但这应该会起作用,所以你可以跳过它。我的代码在这里:from PyQt5 import QtCore, QtGui, QtWidgets

from PyQt5.QtWidgets import QAction

from PyQt5.QtGui import QPalette

# from video import VideoWindow

import sys

class HoverButton(QtWidgets.QToolButton):

def __init__(self, parent=None):

super(HoverButton, self).__init__(parent)

self.setMouseTracking(True)

def enterEvent(self,event):

# print("Enter")

self.setStyleSheet('''

border-image: url("images/exit.jpg") 10 10 2 2;

border-top: 10px transparent;

border-bottom: 10px transparent;

border-right: 2px transparent;

border-left: 2px transparent''')

self.setGeometry(QtCore.QRect(1100, 550, 160, 161))

def leaveEvent(self,event):

self.setStyleSheet('''

border-image: url("images/exit.jpg") 10 10 2 2;

border-top: 10px transparent;

border-bottom: 10px transparent;

border-right: 2px transparent;

border-left: 2px transparent''')

self.setGeometry(QtCore.QRect(1100, 550, 140, 141))

class Ui_MainWindow(object):

def setupUi(self, MainWindow):

MainWindow.setObjectName("MainWindow")

MainWindow.resize(1371, 924)

MainWindow.setAcceptDrops(True)

self.button = HoverButton(self)

self.button.setGeometry(QtCore.QRect(1100, 550, 140, 141))

self.button.setStyleSheet('''background: transparent;

border-image: url("images/exit.jpg") 3 10 3 10;

border-top: 3px transparent;

border-bottom: 3px transparent;

border-right: 10px transparent;

border-left: 10px transparent;

''')

self.button.setObjectName('button')

if __name__ == "__main__":

import sys

app = QtWidgets.QApplication(sys.argv)

MainWindow = QtWidgets.QMainWindow()

ui = Ui_MainWindow()

ui.setupUi(MainWindow)

MainWindow.show()

sys.exit(app.exec_())

输出:

u2E1j.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值