Python 在PyQt5==5.15中设置样式表,但在PyQt5==5.14.2中不设置样式表时,按钮停止工作

Python 在PyQt5==5.15中设置样式表,但在PyQt5==5.14.2中不设置样式表时,按钮停止工作,python,user-interface,pyqt,pyqt5,Python,User Interface,Pyqt,Pyqt5,使用PyQt5==5.15运行GUI时,如果我在init中使用.setStyleSheet(…)设置QPushButton的样式表,则该按钮不会执行连接的函数。如果我没有设置样式表(#.setStyleSheet(…)行),按钮将执行连接的函数。如果我运行的是PyQt5==5.14.2,则该按钮将在设置或不设置样式表的情况下执行函数。有人知道为什么会这样吗?我正在运行MacOS 10.15.6,请参阅我从GUI中提取的这个最小示例: import sys from PyQt5 import Q

使用PyQt5==5.15运行GUI时,如果我在init中使用.setStyleSheet(…)设置QPushButton的样式表,则该按钮不会执行连接的函数。如果我没有设置样式表(#.setStyleSheet(…)行),按钮将执行连接的函数。如果我运行的是PyQt5==5.14.2,则该按钮将在设置或不设置样式表的情况下执行函数。有人知道为什么会这样吗?我正在运行MacOS 10.15.6,请参阅我从GUI中提取的这个最小示例:

import sys

from PyQt5 import QtWidgets, QtGui, QtCore
from PyQt5.QtWidgets import QApplication, QMainWindow, QSizePolicy, QWidget, QPushButton, QFileDialog
from PyQt5.QtCore import Qt


class namedGUI(QMainWindow):

    def __init__(self):
        
        super().__init__()
        
        self.setWindowTitle('Title')
        self.setGeometry(10, 10, 1050, 625)
        self.setContentsMargins(0, 0, 0, 0)
    
        self.initUI()

    def initUI(self):
    
        self.namedButton = QPushButton('Button1', self)
        self.namedButton.setStyleSheet('font : bold 14px ; color : rgb(255,184,20) ;  background-color : rgb(0, 77, 159)')
        self.namedButton.move(5, 5)
        self.namedButton.clicked.connect(self.named_Button_function)
        
        self.namedButton2 = QPushButton('Button2', self)
        self.namedButton2.setStyleSheet('font : bold 14px ; color : rgb(255,184,20) ;  background-color : rgb(0, 77, 159)')
        self.namedButton2.move(175, 5)
        self.namedButton2.clicked.connect(self.named_Button_function)
        
        self.namedButton3 = QPushButton('Button3', self)
        self.namedButton3.setStyleSheet('font : bold 14px ; color : rgb(255,184,20) ;  background-color : rgb(0, 77, 159)')
        self.namedButton3.move(350, 5)
        self.namedButton3.clicked.connect(self.named_Button_function)
        
        self.show()

    def named_Button_function(self):

        dirname = QFileDialog.getExistingDirectory(self)
        
        print('Directory = ' + str(dirname))

            
def main_func():
    app = QApplication(sys.argv)
    ex = namedGUI()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main_func()


更新的版本总是更糟糕,并且有更多的bug。我的建议是永远不要升级任何东西。我看到了很多关于Qt最新版本奇怪行为的问题,这些版本在我的设置(PyQt5 5.9.2、Python3.6、macOS 10.10)中完全按照预期工作。更新:我有九个按钮,如果我为按钮注释任何一个或任何多个.SetStyleSheet(…),它们都可以工作,而不仅仅是一个不再有.SetStyleSheet的按钮(…)。如果我对所有按钮都使用.SetStyleSheet(…),则它们都不起作用。我更新了最小示例,使其具有三个按钮。按原样,没有一个按钮对我起作用。如果我使用任何.SetStyleSheet(…)它们都行。alec我猜你的答案仍然有效,但有什么解决办法吗?隐藏的幻影按钮不起作用。新版本总是更糟糕,并且有更多的bug。我的建议是永远不要升级任何东西。我已经看到很多关于Qt最新版本的奇怪行为的问题,这些问题在我的se上完全按照预期工作tup(PyQt5 5.9.2、Python 3.6、macOS 10.10)。更新:我有九个按钮,如果我为这些按钮注释.SetStyleSheet(…)中的任何一个或任意多个,它们都可以工作,而不仅仅是一个不再有.SetStyleSheet(…)的按钮。如果我使用.SetStyleSheet(…)对于所有的按钮,它们都不起作用。我更新了最小示例,使其有三个按钮。照目前的情况,所有的按钮对我都不起作用。如果我#任何.SetStyleSheet(…)行都起作用。alec,我猜你的答案仍然有效,但有什么解决方法吗?隐藏的幻影按钮不起作用