[Return]

Report a post

Preview
It fukken works! :iyahoo: I had to install a bunch of python modules but it wasn't hard to get working. The script is:

import sys
from PyQt5 import QtWidgets, QtGui, QtCore

class DesktopPet(QtWidgets.QLabel):
    def __init__(self, gif_path):
        super().__init__()

        # Load animated GIF
        self.movie = QtGui.QMovie(gif_path, QtCore.QByteArray(), self)
        self.setMovie(self.movie)
        self.movie.start()

        # Remove window frame, stay on top
        self.setWindowFlags(
            QtCore.Qt.FramelessWindowHint |
            QtCore.Qt.WindowStaysOnTopHint |
            QtCore.Qt.SubWindow
        )
        # Transparent background
        self.setAttribute(QtCore.Qt.WA_TranslucentBackground, True)

        # Resize to GIF size
        self.resize(self.movie.currentPixmap().size())

        # Place bottom-right
        screen = QtWidgets.QApplication.primaryScreen().geometry()
        x = screen.width() - self.width() - 20
        y = screen.height() - self.height() - 50
        self.move(x, y)

if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    pet = DesktopPet(sys.argv[1])
    pet.show()
    sys.exit(app.exec_())


Hopefully some of you guys can figure out how to improve it. :cool:
Post number No.155569
Board Off-Topic@Heyuri
Optional. Describe what's wrong with it.