pyqt5框内显示图像_Pyqt5列表数量按钮添加边框图像

首先,如果要将qs添加到每个按钮,则不必使用objectName,另一方面,问题是因为您不理解“:”的含义,“:”表示您使用的是qresource(.qrc),它是一个允许在Qt中普遍存储文件的文件,并且是一个虚拟路径,您不应该这样做使用那些“:”因为你没有使用它。另一方面,最好有文件的完整路径以避免出现问题,但也必须易于管理,因此解决方案是获取.py的路径,并将其与资源相对于.py的相对路径连接起来,这样您就可以移动项目,即使这样它也可以工作。在import os

import sys

from PyQt5 import QtCore, QtGui, QtWidgets

dir_path = os.path.dirname(os.path.realpath(__file__))

positions_button_KA = [(330, 70, 10, 20),(270, 110, 10, 20),(300, 110, 10, 20),(360, 110, 10, 20),(330, 150, 10, 20),

(180, 190, 10, 20),(240, 190, 10, 20),(300, 190, 10, 20),(360, 190, 10, 20),(210, 230, 10, 20),

(270, 230, 10, 20),(330, 230, 10, 20),(180, 270, 10, 20),(240, 270, 10, 20),(270, 270, 10, 20),

(300, 270, 10, 20),(360, 270, 10, 20),(210, 310, 10, 20),(330, 310, 10, 20),(180, 350, 10, 20),

(240, 350, 10, 20),(300, 350, 10, 20),(360, 350, 10, 20),(210, 390, 10, 20),(270, 390, 10, 20),

(330, 390, 10, 20),(180, 430, 10, 20),(240, 430, 10, 20),(300, 430, 10, 20),(360, 430, 10, 20)]

class Ui_MainWindows(QtWidgets.QMainWindow):

def __init__(self):

super(Ui_MainWindows,self).__init__()

self.central_widget = QtWidgets.QWidget()

self.setCentralWidget(self.central_widget)

self.setWindowTitle("Vision Room")

self.buttons_KA = {}

self.add_buttons_KA_IU()

self.resize(1280, 960)

def add_buttons_KA_IU(self):

name_group = "button_KA"

for i, geom in enumerate(positions_button_KA):

b = QtWidgets.QPushButton(self.central_widget)

b.setGeometry(*geom)

path_image = os.path.join(dir_path, "Ressource/LightOff.png").replace("\\", "/")

qss = 'border-image: url({})'.format(path_image)

b.setStyleSheet(qss)

self.buttons_KA[i] = b

def main():

app = QtWidgets.QApplication(sys.argv)

MainWindow = Ui_MainWindows()

MainWindow.show()

rc = app.exec_()

sys.exit(rc)

if __name__ == "__main__":

main()

Linux系统:

WRQqf.png

窗口:

cqboK.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值