トレイからバルーンメッセージ表示

2018/01/18

Python2.7.8, PySide1.2.2

経過時間をタスクトレイのバルーンから表示するサンプル

# -*- coding: utf-8 -*-

import sys
import time
from PySide import QtCore,QtGui

class MainWindow(QtGui.QMainWindow):
    def __init__(self, parent = None):
        super(MainWindow, self).__init__(parent)

        # アイコン設定
        self.trayIcon = QtGui.QSystemTrayIcon(self)
        icon = self.style().standardIcon(QtGui.QStyle.SP_FileDialogInfoView)
        self.trayIcon.setIcon(icon)
        self.trayIcon.show()

        # タイマー設定
        self.timer = QtCore.QTimer()
        self.timer.setInterval(1000)
        self.timer.timeout.connect(self.showMessage)
        self.timer.start()

        self.startTime = time.time()

    def showMessage(self):
        t = time.time()-self.startTime
        self.trayIcon.showMessage(u'経過時間',u'%d秒' % t)

if __name__ == '__main__':
    app = QtGui.QApplication(sys.argv)
    if not QtGui.QSystemTrayIcon.isSystemTrayAvailable():
        raise OSError('Can not use system tray on this system !')
    window = MainWindow()
    window.show()
    sys.exit(app.exec_())