当前位置: 首页>>代码示例>>Python>>正文


Python QSystemTrayIcon.isVisible方法代码示例

本文整理汇总了Python中PyQt5.QtWidgets.QSystemTrayIcon.isVisible方法的典型用法代码示例。如果您正苦于以下问题:Python QSystemTrayIcon.isVisible方法的具体用法?Python QSystemTrayIcon.isVisible怎么用?Python QSystemTrayIcon.isVisible使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PyQt5.QtWidgets.QSystemTrayIcon的用法示例。


在下文中一共展示了QSystemTrayIcon.isVisible方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: Dialog

# 需要导入模块: from PyQt5.QtWidgets import QSystemTrayIcon [as 别名]
# 或者: from PyQt5.QtWidgets.QSystemTrayIcon import isVisible [as 别名]
class Dialog(QDialog):
  def __init__(self):
    super().__init__()
    # Создание парсера
    self._dotaParser = parser.DotaParser()
    # Инициализация GUI
    self.initUi()
    self.initTray()
    self.initTimer()
    # Первоначальный парсинг
    self.startParser()
    self.fillDialog()
    
  def initUi(self):
    self._ongoingTitle = QLabel("<h3>Ongoing matches</h3>")
    self._ongoingLabel = QLabel("")
    self._upcomingTitle = QLabel("<h3>Upcoming matches</h3>")
    self._upcomingLabel = QLabel("")
    self._quitButton = QPushButton("Quit")
    
    self._layout = QVBoxLayout()
    self._layout.addWidget(self._ongoingTitle)
    self._layout.addWidget(self._ongoingLabel)
    self._layout.addWidget(self._upcomingTitle)
    self._layout.addWidget(self._upcomingLabel)
    self._layout.addWidget(self._quitButton)
    self.setLayout(self._layout)
    
    self._quitButton.clicked.connect(qApp.quit)
    self.setWindowTitle("Dota-2-Widget")
    
  def initTray(self):
    self._tray = QSystemTrayIcon()
    self._tray.setToolTip("dota-2-widget")
    self._tray.setIcon(QIcon("./dota2.gif"))
    self._tray.activated.connect(self.showOrHideDialog)
    self._tray.show()
    
  def initTimer(self):
    self._timer = QTimer()
    self._timer.timeout.connect(self.startParser)
    self._timer.timeout.connect(self.fillDialog)
    self._timer.start(5000)
    
  def startParser(self):
    self._dotaParser.startParser()
    #print("startParser")
    
  def fillDialog(self):
    # Получение результатов
    ongoingMatches = self._dotaParser.getOngoingMatches()
    upcomingMatches = self._dotaParser.getUpcomingMatches()
    # Запись результатов
    resultString = ""
    for i in range(0, len(ongoingMatches)):
      resultString += ongoingMatches[i] + '\n'
    self._ongoingLabel.setText(resultString)
    
    resultString = ""
    for i in range(0, len(upcomingMatches)):
      resultString += upcomingMatches[i] + '\n'
      if (i > 10):
        break
    self._upcomingLabel.setText(resultString)
    #print("fillDialog")
    
  def closeEvent(self, ce):
    if (self._tray.isVisible()):
      self.hide()
      
  def showOrHideDialog(self, result):
    if (result == QSystemTrayIcon.Trigger):
      if (not self.isVisible()):
        self.show()
      else:
        self.hide()
开发者ID:Loafer-Kyamran,项目名称:dota-2-widget,代码行数:78,代码来源:dialog.py


注:本文中的PyQt5.QtWidgets.QSystemTrayIcon.isVisible方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。