本文整理汇总了Python中PyQt5.QtWidgets.QWidget.setProperty方法的典型用法代码示例。如果您正苦于以下问题:Python QWidget.setProperty方法的具体用法?Python QWidget.setProperty怎么用?Python QWidget.setProperty使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PyQt5.QtWidgets.QWidget
的用法示例。
在下文中一共展示了QWidget.setProperty方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _set_icon
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setProperty [as 别名]
def _set_icon(self, widget: QtWidgets.QWidget, icon_name: str) -> None:
if widget.property("icon_name") == icon_name:
return
widget.setProperty("icon_name", icon_name)
icon_path = ROOT_DIR / "data" / "icons" / (icon_name + ".svg")
target_size = QtCore.QSize(18, 18)
stylesheet = ICON_STYLESHEET.format(foreground=Colors.foreground)
icon_content = icon_path.read_text()
icon_content = re.sub(
"(<svg.*>)",
r"\1<style type='text/css'>" + stylesheet + "</style>",
icon_content,
)
svg_renderer = QtSvg.QSvgRenderer(icon_content.encode("utf-8"))
image = QtGui.QPixmap(target_size * self.app.devicePixelRatio())
painter = QtGui.QPainter()
image.fill(QtCore.Qt.transparent)
painter.begin(image)
svg_renderer.render(painter)
painter.end()
image.setDevicePixelRatio(self.app.devicePixelRatio())
widget.setPixmap(image)
示例2: DeckButton
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setProperty [as 别名]
class DeckButton(QWidget):
def __init__(self, deck_no, parent):
super(DeckButton, self).__init__(parent)
self.parent = parent
self.deck_no = deck_no
self.hbox = QHBoxLayout()
self.hbox.setSpacing(0)
self.hbox.setContentsMargins(0,0,0,10)
self.setLayout(self.hbox)
self.state = QWidget(self)
self.state.setObjectName('state')
self.state.setSizePolicy(QSizePolicy(QSizePolicy.Fixed,
QSizePolicy.Fixed))
self.state.setMinimumSize(QSize(10,10))
self.state.setMaximumSize(QSize(10,10))
self.hbox.addWidget(self.state)
self.button = QPushButton(self)
self.button.setCheckable(True)
if deck_no == 1:
self.button.setChecked(True)
else:
self.button.setChecked(False)
self.hbox.addWidget(self.button)
self.button.toggled.connect(self.toggled)
def toggled(self, checked):
if checked:
self.parent.on_deck_selected(self.deck_no)
self.update()
def checkStateSet(self):
self.update()
def update(self):
con = self.parent.con
deck = model.Port(con).deck(self.deck_no)
if not deck.is_null():
self.button.setText(deck.api_name)
self.state.setProperty('state', deck.state())
self.style().unpolish(self.state)
self.style().polish(self.state)
示例3: MainWindow
# 需要导入模块: from PyQt5.QtWidgets import QWidget [as 别名]
# 或者: from PyQt5.QtWidgets.QWidget import setProperty [as 别名]
class MainWindow(QMainWindow):
receiveUpdateSignal = pyqtSignal(str)
errorSignal = pyqtSignal(str)
isDetectSerialPort = False
receiveCount = 0
sendCount = 0
isScheduledSending = False
DataPath = "./"
isHideSettings = False
isHideFunctinal = True
app = None
isWaveOpen = False
def __init__(self,app):
super().__init__()
self.app = app
pathDirList = sys.argv[0].replace("\\", "/").split("/")
pathDirList.pop()
self.DataPath = os.path.abspath("/".join(str(i) for i in pathDirList))
if not os.path.exists(self.DataPath + "/" + parameters.strDataDirName):
pathDirList.pop()
self.DataPath = os.path.abspath("/".join(str(i) for i in pathDirList))
self.DataPath = (self.DataPath + "/" + parameters.strDataDirName).replace("\\", "/")
self.initWindow()
self.initTool()
self.initEvent()
self.programStartGetSavedParameters()
return
def __del__(self):
return
def initTool(self):
self.com = serial.Serial()
return
def initWindow(self):
QToolTip.setFont(QFont('SansSerif', 10))
# main layout
frameWidget = QWidget()
mainWidget = QSplitter(Qt.Horizontal)
frameLayout = QVBoxLayout()
self.settingWidget = QWidget()
self.settingWidget.setProperty("class","settingWidget")
self.receiveSendWidget = QSplitter(Qt.Vertical)
self.functionalWiget = QWidget()
settingLayout = QVBoxLayout()
sendReceiveLayout = QVBoxLayout()
sendFunctionalLayout = QVBoxLayout()
mainLayout = QHBoxLayout()
self.settingWidget.setLayout(settingLayout)
self.receiveSendWidget.setLayout(sendReceiveLayout)
self.functionalWiget.setLayout(sendFunctionalLayout)
mainLayout.addWidget(self.settingWidget)
mainLayout.addWidget(self.receiveSendWidget)
mainLayout.addWidget(self.functionalWiget)
mainLayout.setStretch(0,2)
mainLayout.setStretch(1, 6)
mainLayout.setStretch(2, 2)
menuLayout = QHBoxLayout()
mainWidget.setLayout(mainLayout)
frameLayout.addLayout(menuLayout)
frameLayout.addWidget(mainWidget)
frameWidget.setLayout(frameLayout)
self.setCentralWidget(frameWidget)
# option layout
self.settingsButton = QPushButton()
self.skinButton = QPushButton("")
self.waveButton = QPushButton("")
self.aboutButton = QPushButton()
self.functionalButton = QPushButton()
self.encodingCombobox = ComboBox()
self.encodingCombobox.addItem("ASCII")
self.encodingCombobox.addItem("UTF-8")
self.encodingCombobox.addItem("UTF-16")
self.encodingCombobox.addItem("GBK")
self.encodingCombobox.addItem("GB2312")
self.encodingCombobox.addItem("GB18030")
self.settingsButton.setProperty("class", "menuItem1")
self.skinButton.setProperty("class", "menuItem2")
self.aboutButton.setProperty("class", "menuItem3")
self.functionalButton.setProperty("class", "menuItem4")
self.waveButton.setProperty("class", "menuItem5")
self.settingsButton.setObjectName("menuItem")
self.skinButton.setObjectName("menuItem")
self.aboutButton.setObjectName("menuItem")
self.functionalButton.setObjectName("menuItem")
self.waveButton.setObjectName("menuItem")
menuLayout.addWidget(self.settingsButton)
menuLayout.addWidget(self.skinButton)
menuLayout.addWidget(self.waveButton)
menuLayout.addWidget(self.aboutButton)
menuLayout.addStretch(0)
menuLayout.addWidget(self.encodingCombobox)
menuLayout.addWidget(self.functionalButton)
# widgets receive and send area
self.receiveArea = QTextEdit()
self.sendArea = QTextEdit()
#.........这里部分代码省略.........